2010-08-30 18 views
21

मैं गतिशील के आधार पर मेरी पंक्तियों की ऊंचाई को समायोजित करने के लिए कोशिश कर रहा हूँ है।LinearLayout ऊंचाई 0

दुर्भाग्य onCreate विधि में लेआउट ऊंचाई रिटर्न अशक्त (नहीं तो जब मैं क्लिक श्रोता पर एक में यह कहते हैं)।

क्या कोई और तरीका है जिसे मैं इसे कॉल कर सकता हूं?

उत्तर

52

आप जब तक लेआउट onCreate() के बाद है जो होता है इंतजार करना। आप onSizeChanged() को किसी दृश्य पर या onCreate() (myView.post(new Runnable() { ... })) से रननेबल पोस्ट करके ऐसा कर सकते हैं।

+0

एंड्रॉइड 1.6 में साइज चेंजड के लिए कोई श्रोता नहीं लगता है? (मैं भी नए दृश्य के साथ करने की कोशिश की()। SetOnSize ... और findViewById (R.layout.main) अशक्त रिटर्न ... लगता है जैसे मैं एक बेवकूफ हूँ, लेकिन मैं अभी तक काफी समझ एंड्रॉयड नहीं है। .. – Chr0n

+0

मैं बटन मैं तब तक प्रतीक्षा कर रहा हूँ जो आकार के लिए पर डाल दिया .. this.btNext.post (नई Runnable() { \t \t \t सार्वजनिक शून्य रन() { \t \t \t \t // प्रारंभ संपर्क \t \t \t \t initTableLayout() के साथ tableLayout; \t \t \t} \t \t}); जानकारी के लिए धन्यवाद। – Chr0n

+10

'व्यू' गारंटी के लिए 'रननेबल' पोस्ट करना क्यों है कि 'रननेबल' के भीतर कोड लेआउट के बाद निष्पादित किया जाएगा? क्या यह 'व्यू' की डिज़ाइन सुविधा है कि एक बार लेआउट होने के बाद संदेशों को 'हैंडलर' से संसाधित किया जाता है? – Trevor

संबंधित मुद्दे