7

यदि आप आइटम के selectability को गलत पर सेट करते हैं, तो आप देखेंगे कि उस आइटम के आसपास के डिवाइडर गायब हो जाएंगे।क्या डिवाइडर को एक गैर-चयन योग्य वरीयता के आसपास रखने का कोई तरीका है?

क्या आप जानते हैं कि उन डिवाइडर रखने का कोई तरीका है या नहीं?

मैंने ListView API को देखा है और यहां कोई समाधान नहीं मिला है जिसे यहां लागू किया जा सकता है, क्योंकि ListView आइटम्स के लिए कोई चयन योग्य विशेषता नहीं है (headers और footers को छोड़कर)।

धन्यवाद!

उत्तर

0

कुछ उदाहरण कोड मदद करेंगे! क्या आपने अपने डिवाइडर ListView तत्व में सेट किए हैं? यदि हां this post भी जांचें।

<ListView 
    //... 
    android:divider="@color/black" 
    /> 

अन्यथा आप एक कस्टम ListElementView बना सकते हैं और लेआउट xml में अपने डिवाइडर जोड़ सकते हैं।

+1

मैं यह नहीं कह रहा हूं कि प्राथमिकताओं की मेरी सूची में डिवाइडर नहीं हैं। मैं कह रहा हूं, कि जो वस्तुएं बनाई गई हैं * गैर चयन योग्य * उनके चारों ओर कोई विभाजक नहीं है। कोड के बारे में कुछ खास नहीं है, क्योंकि यह ढांचे के रूप में काम करता है। मैं सिर्फ इस डिफ़ॉल्ट अनुभव को अनुकूलित करने का एक तरीका ढूंढ रहा हूं। सहायता के लिए धन्यवाद! –

1

मैंने इसे एक हैक के साथ किया।

<Preference android:layout="@layout/preference_divider" /> 
<Preference android:title="@string/whatever" android:selectable="false" /> 

रेस/लेआउट/preference_divider.xml

<?xml version="1.0" encoding="utf-8"?> 
<View xmlns:android="http://schemas.android.com/apk/res/android" 
    android:background="#cccccc" 
    android:layout_width="fill_parent" 
    android:layout_height="1px" /> 
+0

आपने इसे 1px में क्यों बदल दिया? 0px मेरे लिए ठीक काम करता है, बस सोच रहा है कि कुछ डिवाइस या एंड्रॉइड संस्करणों पर 0px के साथ समस्या हो सकती है या नहीं? – tomrozb

0

यहाँ एक "चाल" यह मेरे लिए काम किया है। बस वरीयता के अंदर किसी भी आइटम के लिए एंड्रॉइड सेट करें: फोकस करने योग्य = "सत्य" । इससे पूरी प्राथमिकता रेखा क्लिक करने योग्य नहीं होगी।

0

यदि आप कुछ पाठ दिखाने के लिए वरीयता का उपयोग करना चाहते हैं तो आप एक uneditable EditTextPreference का भी उपयोग कर सकते हैं। वरीयता अभी भी चयन योग्य होगी लेकिन चयनित होने पर ही इसकी सामग्री दिखाती है।

<EditTextPreference 
    android:editable="false" 
    ... /> 
0

जिस लाइन को आप छिपाना चाहते हैं उसे 'divider' कहा जाता है। PreferenceActivityListActivity बढ़ाता है और जैसा कि आप उम्मीद कर सकते हैं कि यह ListView का उपयोग करता है। आप ListView में विभाजक बदल सकते हैं। आपके PreferenceActivity:

 ListView lv = getListView(); 
     lv.setDivider(new ColorDrawable(Color.TRANSPARENT)); 
     lv.setDividerHeight(0); 
संबंधित मुद्दे

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