मेरे पास एक सूची दृश्य है जो आमतौर पर singleChoice
choiceMode
है। जब उपयोगकर्ता किसी आइटम पर लंबे समय तक दबाता है, तो मैं एक एक्शन मोड दर्ज करना चाहता हूं जो एकाधिक आइटम चुनने की अनुमति देता है ताकि वे किसी भी चयनित आइटम पर कोई कार्रवाई कर सकें।सूची बदलें दृश्य विकल्प सिंगल चॉइस से एकाधिक चॉइसमोडल
मैं ListView
को कॉन्फ़िगर करने में सक्षम हूं ताकि यह singleChoice
मोड में हो और उपयोगकर्ता इसके बगल में एक विवरण खंड प्रदर्शित करने के लिए सूची आइटम का चयन कर सके और सूची आइटम स्वयं सक्रिय स्थिति में दिखाया जा सके।
मैं भी ListView
कॉन्फ़िगर करने के लिए इतना है कि यह multipleChoiceModal
choiceMode
में है और एक आइटम पर एक लंबे प्रेस प्रदर्शन कर कार्रवाई मोड शुरू होता है और एकाधिक चयन की अनुमति देता है, लेकिन अब ListView सामान्य में एक भी चयन अनुमति नहीं दी जाएगी कर रहा हूँ मोड (कोई एक्शन मोड नहीं)।
मेरे पास एक सूची दृश्य कैसे हो सकता है जो singleChoice
मोड में है और फिर इसे किसी आइटम को लंबे समय दबाए जाने पर multipleChoiceModal
मोड में स्थानांतरित करें?
यह निकटतम मैं साथ आने के लिए कर लिया है है:
singleChoice
मोड में ListView सेट- सेट ListView के
OnItemLongClickListener
और है कि श्रोता में:- ListView के
OnItemLongClickListener
सेटnull
- सूची दृश्य देखें
choiceMode
सेmultipleChoiceModal
- उस आइटम पर
view.performClick()
पर कॉल करें जो लंबे समय तक दबाया गया था।
- ListView के
यह दृष्टिकोण एक जोड़े समस्या है।
- कार्रवाई मोड तब तक शुरू नहीं हुआ जब तक कि मैं किसी आइटम पर लंबे समय तक दबा नहीं जाता।
- जब मैं में
getListView().setChoiceMode(ListView.CHOICE_MODE_SINGLE);
पर कॉल करता हूं तो मुझेjava.lang.StackOverflowError
मिलता है क्योंकि यह विधि क्रिया मोड को भी नष्ट करने की कोशिश कर रही है (लेकिन हम अभी तक नष्ट से वापस नहीं आये हैं)।
आप multipleChoiceMode दर्ज करने के बाद क्या होता है, तो 2 चयनित और singleCheckMode के लिए वापस जाना है? – user387184