2010-08-11 8 views
15

की टूट ExpandableListView के डिफ़ॉल्ट व्यवहार को एक समूह को संक्षिप्त करने के लिए जब अपने हैडर क्लिक किया जाता है है। क्या यह होने से रोकने के लिए संभव है?अक्षम ExpandableListView

मैं कोशिश की है:

  • सूची पर OnTouchListener स्थापना। यह स्क्रॉलिंग में हस्तक्षेप करता है।
  • सूची पर एक OnGroupClickListener (onCreate() में) की स्थापना। यह सभी के बाद सभी क्लिक के लिए काम करता है।

किसी और यह पूरा किया गया है? OnGroupClickListener क्यों पहला क्लिक याद कर सकता है?

आपके सुझावों के लिए अग्रिम धन्यवाद।

+0

यह मेरे लिए काम करता है -> http: // stackov erflow.com/questions/3464599। – adstro

+0

सहायक होने पर, वह धागा मेरे निर्दिष्ट प्रश्न का उत्तर नहीं देता है। – Justin

उत्तर

2

ऐसा लगता है कि ग्रुप हेडर में एक फोकस करने योग्य तत्व और OnGroupClickListener सेट दोनों के साथ समस्या थी। श्रोता को हटाने से मेरी समस्या हल हो गई।

+3

ने इसे मेरे लिए हल नहीं किया है (मैंने पहले स्थान पर भी सेट नहीं किया था)। मेरे पास हेडर के अंदर * क्लिक करने योग्य तत्व हैं, लेकिन हेडर को क्लिक करने योग्य नहीं होना चाहिए। – Matthias

+0

OnGroupClickListener (शून्य); –

14

हो सकता है कि यह `बहुत देर हो चुकी है, मैं onGroupCollapseListener गतिविधि में और क्रियान्वयन onGroupCollapse विधि (expandView ExpandableListView है)

@Override 
public void onGroupCollapse(int collapseIndex) { 
    expandView.expandGroup(collapseIndex); 
} 
+0

यह पूरी तरह से काम किया, धन्यवाद। – Davor

+0

मुझे लगता है कि इसे लागू नहीं किया जाना चाहिए! एंड्रस रास्ता बेहतर है! – Phuong

28

आप इस तरह समूह आइटम पर क्लिक अनदेखा कर सकते हैं:।

mMyExpandableListView.setOnGroupClickListener(new ExpandableListView.OnGroupClickListener() { 
    @Override 
    public boolean onGroupClick(ExpandableListView parent, View v, int groupPosition, long id) { 
     // Doing nothing 
    return true; 
    } 
}); 
2

आप इस कोड का उपयोग उस आइटम पर कर सकते हैं जिसके लिए आप इस पर क्लिक करना चाहते हैं: {convertView.setClickable(false);}

+0

यदि आप अक्षम करना चाहते हैं तो सही कोड पर क्लिक करें –

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