Util.class में अधिकतम 2 int संख्या का एक स्थिर ArrayList है।
सार्वजनिक वर्ग यूतिल गतिविधि को विस्तृत करता है {सार्वजनिक स्थिर ArrayList & lt; Integer & gt; SelectedPosition = नया अर्रेलिस्ट & lt; पूर्णांक & gt; (); selectedPosition.add (3); selectedPosition.add (5); }
मेरे getView () एडाप्टर विधि में मैं पाठदृश्य को बदलने का प्रयास करता हूं और स्थिति 3 और 5 के लिए केवल एक छवि दिखाई देता है। समस्या छवि दृश्य के लिए है, केवल अंतिम तत्व दिखाई देता है, मैं संख्या 3 छविदृश्य नहीं दिखा सकता मैं एडेप्टर के अंदर दोनों छवि विज़ुअल कैसे दिख सकता हूं। यहां मेरी प्राप्त-प्रक्रिया विधि है।
@ ओवरराइड सार्वजनिक देखें getView (अंतिम पूर्णांक स्थिति, कन्वर्टव्यू देखें, ViewGroup पैरेंट) {vi = convertView; If (convertView == नल) {vi = inflater.inflate (आर। लेटा.वॉ, रिक्त); धारक = नया देखेंहोल्डर (); धारक .one = (पाठदृश्य) vi.findViewById (R.id.text_one); धारक। दो = (पाठदृश्य) vi.findViewById (आर.ड.टेक्स्ट_सेकंड); धारक.थ्री = (पाठदृश्य) vi.findViewById (R.id.text_num_compte); धारक। आयाम = (छविदृश्य) vi.findViewById (आर.आईड.single_image); धारक .relative_layout = (रिलेटिव लेआउट) vi.findViewById (R.id.corner); } और धारक = (देखेंहोल्डर) vi.getTag (); vi.setTag (धारक); स्ट्रिंग stDebit = Util.decimalFloatForm (Float.valueOf ((डेटा.get (स्थिति) .getSoldeCompte ()))); यदि (stDebit.startsWith (",")) stDebit = "0 000" + stdeebit; अगर (डेटा.get (स्थिति) .getAuthCompte ()। बराबर अनदेखा करें ("एन")) {holder.one.setText (data.get (स्थिति) .getLibelleCompte ()); Holder.two.setText (stDebit + "EUR"); धारक.थ्री। पाठ (vi.getResources ()। GetString (R.string.special) + "+ डेटा.get (स्थिति) .getNumComtpe ()); } और {धारक.ऑन.सेट टेक्स्ट (डेटा.जेट (स्थिति) .getLibelleCompte ()); धारक। दो .सेट टेक्स्ट ("xx, xxx EUR"); धारक.थ्री। पाठ (vi.getResources ()। GetString (R.string.special) + "+ डेटा.get (स्थिति) .getNumComtpe ()); } Holder.image.setVisibility (देखें। GONE); // सही छिपाने के लिए सिस्टम। आउट.प्रिंट ("VirementEmmeteurSize:" + Util.selectedPosition.size ()); // check if selectedPosition खाली है अगर (Util.selectedPosition! = Null) {के लिए (int x = 0; x & lt; Util.selectedPosition.size (); x ++) {int index = Util.selectedPosition.get (x) .toString () .indexOf (String.valueOf (स्थिति)); बूलियन बूल वैल्यू = (अनुक्रमणिका == -1? गलत: सच है); If (boolValue) {holder.two.setText (stDebit + + + डेटा.get (स्थिति) .getDeviseCompte ()); holder.image.setVisibility (View.VISIBLE); // दाहिने टिक को दिखाएं} और {धारक.इमज .सेटस्जिबिलिटी (देखें। जीन); // सही टिक टिक करें}}} वापसी vi; }
इस तरह से प्रयास करें, आशा है कि यह आपकी समस्या को हल करने में आपकी मदद करेगी ।
-
कॉम्पेटपोस्ट कक्षा में एक झंडा लें
निजी बूलियन का चयन किया गया है; सार्वजनिक शून्य सेट Is चुने गए (बूलियन का चयन किया गया है) {this.isseelected = iselected; } सार्वजनिक बूलियन का चयन किया गया है () {रिटर्न चयनित है; }
-
चयन मान को कैसे बदला जाए।
data.get (3) .setIsSelected (सत्य); data.get (5) .setIsSelected (सही);
-
एडेप्टर में चयन मूल्य का उपयोग कैसे करें।
यदि (डेटा.get (स्थिति) .isselected ()) { holder.image.setVisibility (View.VISIBLE); } अन्य {holder.image.setVisibility (देखें। GONE); }
Comments
Post a Comment