2011-01-05 16 views
39

रैखिक लेआउट के दो या दो से अधिक तत्वों को सेट करना एक ही ऊंचाई एक बड़ी समस्या प्रतीत होती है।बच्चे पर wrap_content को संयोजित और बच्चे पर fill_parent

मैं एक पंक्ति में चार बटन एक ही ऊंचाई पर सेट करना चाहता हूं।

एंड्रॉइड: layout_height = "wrap_content" इस पल के लिए करता है लेकिन जब बटन में से एक पर टेक्स्ट एक पंक्ति से अधिक लंबा होता है तो यह बटन बढ़ जाता है और इसलिए अन्य लोगों की तुलना में बड़ा होता है। विभिन्न स्थानीयकरणों के कारण मुझे नहीं पता, कब और किस बटन में दूसरी पंक्ति हो सकती है।

तो मेरा विचार है, एंड्रॉयड के लिए LinearLayout माता पिता सेट करने के लिए: layout_height = "wrap_content" और सभी एंड्रॉयड के लिए बच्चे ऊंचाइयों (!): Layout_height = "fill_parent"

यह काम करता है (सभी बटन एक ही आकार के होते हैं), लेकिन मुझे यकीन नहीं है कि इससे कोई अन्य समस्याएं आती हैं? क्योंकि माता-पिता को बच्चों से इसकी ऊंचाई मिलती है और इसके विपरीत।

+0

मेरे पास एक ही सवाल था, इसे सर पूछने के लिए बहुत बहुत धन्यवाद :) –

+0

क्या मैं अकेला हूं जिसमें यह काम नहीं कर रहा है? – Tiago

उत्तर

53

सिद्धांत रूप में आप क्या वर्णन कर रहे हैं काम नहीं करना चाहिए ("यह क्योंकि माता-पिता यह ऊंचाई है हो जाता है से बच्चे और इसके विपरीत "।) हालांकि, हमने इसे लाइनरलाउट में काम किया क्योंकि यह एक बहुत ही सामान्य उपयोग मामला था। मैंने हाल ही में फ्रेमलेआउट के लिए समान समर्थन जोड़ा है (यह सुविधा हनीकॉम का हिस्सा होना चाहिए।) आप जो कर रहे हैं वह पूरी तरह से है वैध और ठीक काम करेगा।

+2

जब भी यह स्वीकार करता है कि यह काम करता है, तब भी मैं उलझन में हूं कि यह क्यों काम करता है। यह पुनरावर्ती प्रकृति के कारण थोड़ा अजीब है (माता-पिता बच्चे से पूछता है और बच्चा वापस पूछता है)। तो क्या इस मामले में लेआउट प्रक्रिया कैसे काम करती है, इस बारे में बताते हुए कोई वास्तविक दस्तावेज है? विशेष रूप से, माता-पिता अपने आकार को सबसे बड़े बच्चे का आकार चुनते हैं। इसलिए एक ही आकार के सभी बच्चों का नतीजा। क्या यह दस्तावेज है? – ramcrys

+0

@ramcrys यह याद रखने में मदद कर सकता है कि बच्चा माता-पिता के आकार के लिए "वापस पूछता है" नहीं - यह हमेशा एक दिया जाता है: माता-पिता बच्चों को मापते हैं, उपलब्ध आकार (पिक्सेल) को क्वालीफायर (अनिर्दिष्ट, बिल्कुल, बिल्कुल) । – ataulm

+0

यह 'wrap_content' को बहुत दृढ़ता से प्रतीत नहीं होता है। मुझे 'लीनियरलाउट' में दो बटन मिल गए हैं। वे 'wrap_content'' की तुलना में उनकी ऊंचाई के साथ 'match_parent' पर सेट होते हैं। संपादित करें: आह, 'लीनियरलाउट' में 'बेसलाइनलाइन' के साथ कुछ मजा भी है – Sam

-2

भावना :(

तुम क्यों android:singleLine="true" और कुछ ellipsode का उपयोग नहीं करते नहीं है यही कारण है कि?

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