google maps - Check box android -


मैंने विधि बनाते समय दो चेक बॉक्स जोड़ दिए

  checkbox1 = (चेकबॉक्स) findViewById (R.id.checkBox1); चेकबॉक्स 2 = (चेकबॉक्स) ढूंढिए ViewById (R.id.checkBox2); Checkbox1.setOnCheckedChangeListener (यह); Checkbox2.setOnCheckedChangeListener (यह); चेक बॉक्स के मुख्य कार्य   

जब ischeck () एक चित्र mainlayout में जोड़ा जाएगा और जब चित्र हटा दिया जाएगा तो & gt; & gt; मैंने कोड का इस्तेमाल किया, पहला चेक बॉक्स ठीक काम कर रहा है दूसरा चेक बॉक्स जब मैं चेक करता हूं तो यह तस्वीरों को दिखाता है और फिर मैं उन्हें अनचेक के साथ निकाल सकता हूं ... मेरे कोड में गलत कहां है ??

  चेक किए गए परिवर्तन पर सार्वजनिक शून्य (कम्पाउंड बटन बटन दृश्य, बुलियन हैकैक्केटेड) {// टोडो ऑटो-जेनरेट किया गया विधि स्टब अगर (चेकबॉक्स 1। चेक किया गया ()) {...... mapOverlays.add (कस्टम) ; } और {mapOverlays.remove (कस्टम); } अगर (checkbox2.isChecked ()) {.... mapOverlays.add (custom2); } और {mapOverlays.remove (custom2); }}}    

आप दूसरे चेकबॉक्स को अलग तरीके से देख रहे हैं हो सकता है कोड ऐसा दिखना चाहिए? <पूर्व> यदि (checkbox2.ischecked ()) {... mapOverlays.add (custom2); } और {mapOverlays.remove (custom2); }

अपडेट करें: यदि आपका कोड मौजूदा संपादन की तरह दिखता है, तो समस्या यह है कि custom2 को अगर ब्लॉक आप मैप ओवरले को नहीं हटा रहे हैं, लेकिन दूसरी जगह किसी अन्य को घोषित किया गया है।

बस

  को बदलें  (checkbox2.isChecked ()) {MapItemizedOverlay custom2 = ...   

द्वारा

  यदि (checkbox2.isChecked ()) {custom2 = ...   

Upd2: आपके पर चेक-चेंग () विधि के साथ एक और समस्या है पहला if-else न केवल checkbox1 पर चेक / अनचेक चलाता है, लेकिन चेकबॉक्स 2 पर चेक / अनचेक भी नहीं। दूसरा if-else के लिए समान है।

विधि को दोबारा लिखने की कोशिश करें:

  चेक-ऑन किए गए सार्वजनिक वायर्ड (कम्पाउंड बटन बटन दृश्य, बूलियन का चेक है) {यदि ( बटन वीवएएपल्स (चेकबॉक्स 1)) {// पहले अगर-else} else अगर (बटन दृश्य.एक्साल (चेकबॉक्स 2)) {// सेकंड if-else}}   

या इससे भी बेहतर: < / P>

  चेक किए गए परिवर्तन पर सार्वजनिक शून्य (कम्पाउंड बटन बटन दृश्य, बूलियन का चेक है) {if (buttonView.getId () == R.id.checkBox1) {if (isChecked) {... mapOverlays.add (कस्टम) ; } और {mapOverlays.remove (कस्टम); }} और अगर (buttonView.getId () == आर.आईड.चेकबॉक्स 2) {if (चेक है) {... mapOverlays.add (custom2); } और {mapOverlays.remove (custom2); }}}     पर क्लिक करें

Comments