2016-02-06 13 views
6

मैं रीसाइक्लर व्यू या ग्रिड व्यू सहित यूआई बनाने की कोशिश कर रहा हूं, जहां मैं आइटम्स की संख्या और चौड़ाई के आधार पर कॉलम की संख्या स्वचालित रूप से सेट करना चाहता हूं कि मैं गतिशील रूप से populating हूँ।रीसाइक्लिंग के लिए लेआउटमैनेजर आइटम की चौड़ाई के अनुसार स्वचालित रूप से कॉलम की संख्या सेट करने के लिए देखें

यहाँ मैं अब तक हासिल कर लिया है की छवि है ...

my current UI

यहाँ मैं क्या हासिल करने की कोशिश कर रहा हूँ की छवि है ...

my target UI

मेरा आइटम लेआउट xml

<TextView 
     android:layout_width="wrap_content" 
     android:layout_height="40dp" 
     android:background="@drawable/hollow_white_background" 
     android:id="@+id/foodItemName" 
     android:text="PIZZA" 
     android:gravity="center" 
     android:textColor="@color/colorGray300" 
     android:textStyle="bold" 
     android:textSize="15sp" 
     android:paddingLeft="10dp" 
     android:paddingRight="10dp" /> 

पी पट्टा सहायता!

+0

आइटम लेआउट एक्सएमएल और कोड आप GridLayoutManager विन्यस्त करने के लिए प्रयोग किया जाता है RecyclerView की LayoutManager रूप StaggeredGridLayoutManager उपयोग करके देखें। – thetonrifles

+0

अपने लक्षित यूआई को देखते हुए मुझे लगता है कि आप मानक लेआउट प्रबंधक के साथ एक RecyclerView का उपयोग करके इसे प्राप्त नहीं कर सकते हैं। आपको किसी प्रकार की फ्लोलाउट की आवश्यकता है। कई कार्यान्वयन उपलब्ध हैं। उदाहरण के लिए [यहां] (https://github.com/thetonrifles/android-tags- चयनकर्ता) यह मेरे जैसा भंडार है जिसमें कुछ समान है। – thetonrifles

+0

शायद फ़्लोलाउट वह है जिसे आप ढूंढ रहे हैं। Https://github.com/ApmeM/android-flowlayout या https://github.com/blazsolar/FlowLayout देखें। –

उत्तर

0

अपनी एक्सएमएल फ़ाइल में, एंड्रॉइड जोड़ें: numColumns = "auto_fit" और एंड्रॉइड: stretchmode = "columnWidth" आपके ग्रिड व्यू के लिए विशेषताएँ। पहली विशेषता यह तय करती है कि स्क्रीन आकार के आधार पर कितने कॉलम होना चाहिए, और दूसरी विशेषता यह तय करती है कि अतिरिक्त स्थान के साथ क्या करना है, जो इस मामले में कॉलम चौड़ाई बढ़ाता है।

+1

पहले से ही ऐसा किया है, फिर भी यह बाएं से गठबंधन मेरे आइटम के साथ केवल दो कॉलम दिखाता है, अतिरिक्त स्थान को संभाल नहीं करता है। मैं चाहता हूं कि जब मेरी वस्तु की चौड़ाई छोटी हो, तो इसे 3 कॉलम या अधिक की तरह प्रदर्शित होना चाहिए और जब चौड़ाई बड़ी हो, तो इसे स्वचालित रूप से 1 या 2 कॉलम प्रदर्शित करना चाहिए! –

+0

@ आयुषौर अच्छी तरह से, उन विशेषताओं को वही करना चाहिए जो आपको चाहिए। क्या आप अपनी वर्तमान एक्सएमएल फाइल के साथ सवाल अपडेट कर सकते हैं? –

+0

इस एक्सएमएल है मैं उपयोग कर रहा था , और सवाल अभी भी वही है। –

0

उपलब्ध कराएँ निश्चित की widthitem_layout.xml

+0

StaggeredGridLayoutManager पंक्तियों को प्रभावित करता है, कॉलम नहीं! –

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

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