2011-09-22 12 views
7

सूची दृश्य में पंक्तियों की निश्चित संख्या को कैसे सेट किया जाए? मैं 5 पंक्तियां केवल सूची दृश्य में दिखाने के लिए सभी पंक्तियों को सेट करना चाहता हूं। तो मैं इस लक्ष्य को कैसे प्राप्त कर सकता हूं?एंड्रॉइड: सूची दृश्य में फिक्स्ड नो (5) पंक्तियों को स्क्रॉल करने के बाद कैसे सेट करें?

उत्तर

3

हाँ, आप एडाप्टर क्लास के माध्यम से प्राप्त कर सकते हैं, अपने एडाप्टर क्लास में निम्न कोड के साथ प्रयास करें।

public int getCount() { 
     return 5; 
    } 

आप इस सेट करते हैं, अनुकूलक वर्ग भार केवल 5 आइटम नहीं है।

+5

यह एक अच्छा विचार नहीं है। यह केवल 5 आइटम दिखाएगा और अगले आइटम पर स्क्रॉल करने योग्य नहीं होगा –

+0

क्या आप अपना आइटम व्यू एक्सएमएल कोड और सूचीदृश्य xml कोड पोस्ट कर सकते हैं? –

2

यह पंक्ति वस्तु ऊंचाई को निश्चित डीपीएस पर सेट करके और सूची दृश्य ऊंचाई को सटीक डीपीएस में पंक्ति ऊंचाई के 5 गुना होने के द्वारा प्राप्त किया जा सकता है।

+1

पंक्ति वस्तु ऊंचाई को निश्चित डीपीएस – jaimin

2

यहाँ है कैसे मैंने किया:

चरण 1: आइटम सूची ITEM_LIST_HEIGHT को सेट निश्चित ऊंचाई

<TextView xmlns:android="http://schemas.android.com/apk/res/android" 
      android:layout_width="match_parent" 
      android:layout_height="25dp"> 

</TextView> 

चरण 2: सूची सेट निश्चित ऊंचाई, अधिक वास्तव में LIST_HEIGHT = NUMBER_OF_ITEMS_TO_DISPLAY एक्स ITEM_LIST_HEIGHT। उदाहरण के लिए 6 आइटम 150;

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
       android:orientation="vertical" 
       android:layout_width="fill_parent" 
       android:layout_height="fill_parent"> 
    <ListView 
      android:layout_width="wrap_content" 
      android:layout_height="150dp"/> 

मुझे आशा है कि इससे मदद मिलती है!

0

आप अपने एडाप्टर को अनुकूलित कर सकते हैं। लेकिन मुझे लगता है कि आपका विचार सूची दृश्य के सेट MAX आइटम है। (मुझे लगता है कि यह बेहतर होगा)।

तो आप करेंगे कस्टम की तरह अपने अनुकूलक देखो:

private class CustomAdapter<T> extends ArrayAdapter<T> { 
    private static final int MAX_ROW_DISPLAY = 5; 
    private List<T> mItems; 
    public CustomAdapter(Context context, int resource, List<T> objects) { 
     super(context, resource, objects); 
     mItems = objects; 
    } 

    @Override 
    public int getCount() { 
     if (mItems == null) { 
      return 0; 
     } 
     return Math.min(MAX_ROW_DISPLAY, mItems.size()); 
    } 
} 

आशा इस मदद यू!

+0

पर सेट करने के लिए कैसे करें यह स्क्रॉल को अक्षम कर देगा और दृश्यमान वस्तुओं की अधिकतम संख्या 5 पर सेट करेगा :(( –

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