2013-09-23 6 views
5

पर आधारित एक निश्चित आकार तक सामग्री को लपेटें, मैं एंड्रॉइड एप्लिकेशन पर काम कर रहा हूं। इसके तहत एक और सापेक्ष दृश्य (receiptSection)एंड्रॉइड सूची फ़ूटर आकार

मैं शीर्ष (listViewProducts) एक सूची दृश्य होता है और:

एक एक्सएमएल लेआउट में मैं निम्नलिखित कार्य करने होंगे।

सूची दृश्य में जितनी जगह होनी चाहिए उतनी जगह लेनी चाहिए। और शेष रसीद जांच द्वारा लिया जाता है।

first image

सूची दृश्य 2 आइटम के रूप में बड़ा है और बाकी receiptView द्वारा लिया जाता है:

इसलिए उदाहरण के लिए मैं listViewProducts में 2 आइटम है।

मैं कोई अन्य आइटम जोड़ने, तो सूची दृश्य अब और अधिक स्थान लेने के लिए और धक्का receiptView कम:

enter image description here

लेकिन अगर मैं एक बहुत अधिक आइटम जोड़ने, मैं सूची दृश्य ऊंचाई चाहते बढ़ रही रोकने के लिए receiptView के लिए एक न्यूनतम ऊंचाई छोड़ने के लिए है कि छोटे नहीं जा सकते:

enter image description here

आप चित्र में देख के रूप में, receiptVIew 50dp की एक न्यूनतम ऊंचाई है। एक बार रसीद दृश्य उस ऊंचाई तक पहुंचने के बाद, इसे कम करना बंद कर देना चाहिए और अब सूची दृश्य के शेष स्थान के आधार पर एक निश्चित आकार है। बाकी स्क्रोल करने योग्य होगा।

मैं

क्या कोशिश की है मैं एक सूची दृश्य बनाया। मेरे पास android:layout_alignParentTop="true" और android:layout_height="wrap_content" है।

यह कर देगा यह उसकी सामग्री और उसके दृश्य के शीर्ष पर

<ListView 
    android:id="@+id/listViewProducts" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_alignParentTop="true" > 
</ListView> 

तो मैं एक RelativeLayout कि checkout_receipt_view एक अलग XML लेआउट फ़ाइल में है कि आयोजन करेगा बनाया के साथ बड़े होते हैं।

इस दृश्य के लिए मेरे पास android:layout_alignParentBottom="true" और android:layout_below="@id/listViewProducts" है जो इसे सूची दृश्य के अंतर्गत ले जाएगा और दृश्य के नीचे से संरेखित करेगा।

मैंने रसीद जांच की न्यूनतम ऊंचाई निर्धारित करने के लिए android:minHeight="50d" का भी उपयोग किया।

<RelativeLayout 
    android:id="@+id/receiptSection" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_alignParentBottom="true" 
    android:layout_below="@id/listViewProducts" 
    android:minHeight="50dp" > 
    <include layout="@layout/checkout_receipt_view" /> 
</RelativeLayout> 

सूची दृश्य उत्पाद वस्तुओं के साथ बढ़ रहा है, और रसीद दृश्य शेष स्थान को सही तरीके से ले रहा है।

समस्या हालांकि न्यूनतम ऊंचाई काम नहीं कर सका। सूची दृश्य असीम रूप से बढ़ता रहता है और प्राप्ति जांच को दृश्य से बाहर धकेल दिया जाएगा।

क्या कोई तरीका है जिससे मैं सूची बना सकता हूं जब रसीद दृश्य 50 डीपी तक पहुंचता है?

किसी भी मदद के लिए बहुत बहुत धन्यवाद।

उत्तर

-1

'layout_below' को स्वैप करने का प्रयास करें।

आप वास्तव में क्या कह रहे हैं निम्नलिखित है: कृपया सूचीदृश्य के नीचे मेरा रिलेटिवेलआउट डालें। आप अपने सूचीदृश्य relativelayout की ऊंचाई का सम्मान करना चाहते हैं, आप सूचीदृश्य में कहने के लिए होगा:

<ListView 
    android:id="@+id/listViewProducts" 
    android:layout_width="match_parent" 
    android:layout_height="wrap_content" 
    android:layout_above="@+id/receiptSection" 
    android:layout_alignParentTop="true" > 
</ListView> 

और अपने relativelayout:

<RelativeLayout 
    android:id="@+id/receiptSection" 
    android:layout_width="match_parent" 
    android:layout_height="match_parent" 
    android:layout_alignParentBottom="true" 
    android:minHeight="50dp" > 
    <include layout="@layout/checkout_receipt_view" /> 
</RelativeLayout> 
+0

यह मेरे लिए काम नहीं करता। "पाद लेख" अनुभाग पूरी स्क्रीन लेता है क्योंकि इसकी ऊंचाई match_parent पर सेट है। यदि आप इसे wrap_content पर सेट करते हैं, तो यह स्क्रीन के निचले हिस्से में सभी तरह से रहता है, भले ही सूची दृश्य में केवल 1 आइटम हो, जो समस्या है जिसे हम हल करने का प्रयास कर रहे हैं। – OldSchool4664

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