android - How to limit the height of a ListView within a GridLayout? -


मेरे पास GridLayout है जिसमें ListView और एक TextView । जब आइटम को ListView में जोड़ दिया जाता है तो यह आकार में बढ़ेगा और स्क्रीन के नीचे TextView को दबाएगा। मुझे लगता है कि ListView पर layout_gravity = "fill" सेट करके यह बिल्कुल नहीं बढ़ेगा बल्कि सभी उपलब्ध जगह ले सकता है।

मैं कैसे

मैं GridLayout का उपयोग कर एक समाधान की तलाश कर रहा हूं। मुझे पता है कि मेरे मामले में एक linearLayout भी काम करेगा I हालांकि यह मेरी समस्या को स्पष्ट करने के लिए केवल एक न्यूनतम परीक्षण मामला है।

यदि संभव हो तो मैं प्रोग्राम को निर्धारित ऊंचाई पर सेट नहीं करना चाहता।

  & lt; android.support.v7 .widget.GridLayout xmlns: एंड्रॉइड = "http://schemas.android.com/apk/res/android" xmlns: ऐप = "http://schemas.android.com/apk/res-auto" एंड्रॉइड: layout_width = "मैच_पेरेंट" एंड्रॉइड: लेआउट_हेइट = "मैच_पेरेंट" ऐप: कॉलमकाउंट = "1" ऐप: उपयोगडिफ़ॉल्ट मार्जिन = "सच" & gt; & lt; ListView ऐप: लेआउट_ग्राविटी = "भरना" / & gt; & lt; TextView एंड्रॉइड: text = "TextView" / & gt; & LT; /android.support.v7.widget.GridLayout>    

यह उत्तर मेरी टिप्पणियों को सवाल और यह ग्रिडलेआउट के गुणों के माध्यम से एक्सएमएल के साथ ऐसा क्यों नहीं किया जा सकता

एक सीमा को सुलझाने के लिए ढांचे की अनुमति के लिए GridLayout जोड़ना नेस्टेड लेआउट के बारे में कमियां, जिनमें से एक फिलिप मिल्ने द्वारा लेख में वर्णित के रूप में "एक साथ क्षैतिज और ऊर्ध्वाधर दोनों अक्षों पर संरेखण को नियंत्रित करने में अक्षम"

यह संरेखण नियंत्रण layout_gravity पैरामीटर द्वारा किया जाता है जिसके पैरामीटर "निर्दिष्ट करता है कि एक घटक कैसे रखा जाना चाहिए अपने समूह के कक्ष में ", ( रूट लेआउट के भीतर नहीं < / em> )। असल में, यह LinearLayout के समान है, जिसमें लेख में भी उल्लेख किया गया है: "संरेखण / गुरुत्वाकर्षण भी LinearLayout में गुरुत्वाकर्षण की तरह काम करता है .. । और जैसा कि हम जानते हैं, LinearLayouts के लिए, एक बार एक बार स्क्रीन की पूरी ऊंचाई (जैसा सूचीदृश्य ), नीचे दिए गए विचार स्क्रीन के पीछे जाते हैं यदि लेआउट उन्मुख "लंबवत" पर सेट होता था।

यदि हम दस्तावेज़ीकरण को देखते हैं तो हमें कोई ऐसा पैरामीटर नहीं मिलेगा जो एक सेल समूह के भीतर एक घटक को पैरेंट लेआउट की एक निश्चित स्थिति में चिपकाने और अन्य घटकों के आकार से स्वतंत्र स्थिति में रहने की अनुमति देगा। एक ही समूह; रिलेटिव लेआउट के पैरामीटर के समान।

GridLayout में इस प्रकार के मापदंडों की अनुपस्थिति के बारे में मेरा सबसे अच्छा अनुमान है नेस्टेड लेआउट से बेहतर संरेखण नियंत्रण ।

मुझे यकीन है कि आप GridLayout के गुणों के अलावा किसी अन्य दृष्टिकोण का उपयोग कर अपनी समस्या के समाधान (एस) को जानते हैं मैं सिर्फ उत्तर को पूरा करने के लिए एक सुझाव देता हूं:

  & lt; GridLayout ... & gt; & Lt; रिलेटिव लेआउट ... & gt; & Lt; TextView ... एंड्रॉइड: आईडी = "@ + आईडी / टीवी" एंड्रॉइड: लेआउट_अलग parentBottom = "true" / & gt; & lt; ListView ... एंड्रॉइड: layout_above = "@ id / tv" & gt; & Lt; / ListView & gt; & Lt; / RelativeLayout & gt; & Lt; / GridLayout & gt;    

Comments

Popular posts from this blog

php - PDO bindParam() fatal error -

logging - How can I log both the Request.InputStream and Response.OutputStream traffic in my ASP.NET MVC3 Application for specific Actions? -

java - Why my included JSP file won't get processed correctly? -