2009-10-22 17 views
11

की सामग्री पर depening मैं एक रेटिंग और दूरी वर्तमान स्थान के साथ स्थानों के बारे में जानकारी युक्त वस्तुओं के साथ एक ListView है ListView में कस्टम विभाजक (या आइटम)।एंड्रॉयड: आइटम

आइटम

समूहों में हल कर रहे हैं: के भीतर 500 मीटर

  • समूह 2:: 500 मी - 1km
  • समूह 3:

    • समूह 1 1km - 1.5 किमी
    • ...

    इन समूहों के साथ आइटम को उनकी रेटिंग द्वारा क्रमबद्ध किया जाता है।

    अब मैं इन मदों को अपने कस्टम एडाप्टर (BaseAdapter का विस्तार) ListView में डालता हूं, जो पूरी तरह से काम करता है।

    हालांकि, मैं क्या करना चाहता हूं कि प्रत्येक समूह के प्रत्येक आइटम से पहले विभाजक को रखना है। यह विभाजक TextView कह सकता है उदा। 500m - 1km उसके बाद उस समूह में सभी ListView आइटमों के बाद।

    इस बारे में कोई विचार कैसे है?

  • उत्तर

    19

    Here is one implementation जो आप वर्णन करते हैं वही करता है।

    वह एक जीपीएलवी 3 है, क्योंकि यह this implementation से लिया गया है, जो जीपीएलवी 3 था।

    इसके लिए आप मेरे MergeAdapter का भी उपयोग कर सकते हैं, जिसका अपाचे लाइसेंस 2.0 होने का लाभ है। बस इसे प्रत्येक अनुभाग के लायक सामग्री वाले हेडर TextView एस और Adapter एस का एक वैकल्पिक सेट सौंपें।

    या, आप इन सभी पर देख सकते हैं और अपने व्यवहार को अपने मौजूदा Adapter कक्षा में रोल कर सकते हैं। यह चाल सही जगह पर TextView शीर्षलेखों को वापस करने के लिए है, और getViewTypeCount(), getItemViewType(), areAllItemsEnabled(), और isEnabled() जैसी विधियों को ठीक से कार्यान्वित करना है।

    +0

    क्या आपके पास कोई स्क्रीन शॉट है? – Tawani

    +0

    मेरी उन्नत एंड्रॉइड पुस्तक में पहले व्यक्ति का एक स्क्रीन शॉट है। जेफ शार्के की साइट पर दूसरे के ऊपर एक स्क्रीन शॉट है, जैसा ऊपर से जुड़ा हुआ है। मेरे पास तीसरे व्यक्ति का स्क्रीन शॉट नहीं है, बड़े हिस्से में क्योंकि यह मर्ज एडाप्टर का स्क्रीन शॉट नहीं होगा, लेकिन जो भी आपने MergeAdapter में डाला है उसका एक स्क्रीन शॉट। – CommonsWare

    +0

    अनुभागित एडाप्टर का आपका कार्यान्वयन खूबसूरती से काम करता है। धन्यवाद! एक त्वरित सवाल: क्या प्रत्येक खंड की अंतिम सूची वस्तु से नीचे विभाजक को हटाने का कोई तरीका है? – jeffh

    4

    आईओएस अनुभाग सूची दृश्य से प्रेरित, यहां तक ​​कि अच्छे कार्यान्वयन भी है: http://code.google.com/p/android-section-list/। इसके बारे में नीची बात यह है कि यदि आप अनुभाग को नीचे स्क्रॉल करते हैं तो भी अनुभाग शीर्षलेख दिखाई देता है।

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