2011-03-03 18 views
46

में चेकबॉक्स को मैं इस के लिए मैं एक check_custom.xml फ़ाइल जिसमें मैं की तरह चेक बॉक्स के विभिन्न राज्यों के लिए कस्टम छवि को परिभाषित बनाने एंड्रॉयड में चेकबॉक्स को कस्टम छवि लागू करने के लिए कोशिश कर रहा हूँ, कस्टम छवि लागू करने के लिए कैसे:एंड्रॉयड

<item android:state_checked="true" 
     android:drawable="@drawable/btn_check_on" /> <!-- checked --> 
<item android:state_checked="false" 
     android:drawable="@drawable/btn_check_off" /> <!-- unchecked --> 
<item android:state_focused="true" 
     android:drawable="@drawable/btn_check_onfocus" /> <!--on focus--> 
<item android:drawable="@drawable/btn_check_off" /> <!-- default --> 

चेक पर, फोकस पर और अनचेक किए गए तीन राज्यों पर तीन अलग-अलग छवियां, और फिर मैं इस एक्सएमएल फ़ाइल को चेक बॉक्स की पृष्ठभूमि विशेषता में असाइन करता हूं, लेकिन मुझे आवश्यक परिणाम नहीं मिल रहा है, यह तकनीक कस्टम छवि भी लागू करती है दोनों डिफ़ॉल्ट छवि के रूप में।

+0

[कस्टम चेकबॉक्स छवि एंड्रॉयड] (http://stackoverflow.com/questions/3965484/custom-checkbox-image-android) –

उत्तर

90

सलमान, के बजाय android:button सेट करें। भी Custom checkbox image android

+0

ग्रेट के संभावित डुप्लिकेट! आपके त्वरित और बहुत ही उत्साही उत्तर के लिए धन्यवाद डीजेसी :) –

+2

आपका स्वागत है। अगर यह काम करता है तो मैं बाईं ओर चेकबॉक्स पर एक क्लिक की सराहना करता हूं, जो उत्तर देने वाले के प्रतिनिधि की मदद करता है :) – DJC

+2

यह अच्छा और सरल दोस्त है, क्या वह इसे उत्तर के रूप में चिह्नित नहीं करता है। मैं +1 –

5

कॉपी Android-SDK/प्लेटफार्मों/एंड्रॉयड से btn_check.xml देखें - #/डेटा/res/drawable अपने प्रोजेक्ट की drawable फ़ोल्डर में और अपने कस्टम छवियों के लिए छवि राज्यों 'बंद' 'चालू' और बदल जाते हैं।

फिर अपने एक्सएमएल सिर्फ android:button="@drawable/btn_check"

<CheckBox 
    android:button="@drawable/btn_check" 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:checked="true" /> 

की आवश्यकता होगी आप अलग-अलग डिफ़ॉल्ट एंड्रॉयड चिह्न का उपयोग करना चाहते हैं, android:button="@android:drawable/..."

14

मैं चेकबॉक्स डिफ़ॉल्ट छवि के स्वरूप की तरह फ्लॉप आप उपयोग कर सकते हैं जब पृष्ठभूमि लेआउट अंधेरा था, तो मैंने बटन में एक सफेद पृष्ठभूमि रखने के लिए इसे एक एक्सएमएल चयनकर्ता का उपयोग करके बदल दिया।

चयनकर्ता में एंड्रॉयड की जरूरत है: बटन = "@ drawable/selector_check"

    <CheckBox 
          android:id="@+id/checkBox1" 
          android:layout_width="fill_parent" 
          android:layout_height="wrap_content" 
          android:gravity="left" 
          android:text="Show password" 
          android:textColor="@color/white" 
          android:button="@drawable/selector_check" 
          > 

और निम्नलिखित "drawable/selector_check.xml" की सामग्री है:

  <?xml version="1.0" encoding="utf-8"?> 
      <selector xmlns:android="http://schemas.android.com/apk/res/android"> 
      <item android:state_checked="true" 
       android:drawable="@android:drawable/checkbox_on_background" /> <!-- checked --> 
      <item android:state_checked="false" 
      android:drawable="@android:drawable/checkbox_off_background" /> <!-- unchecked--> 
      </selector> 

और यह

enter image description here

3

: परिणाम है 0

<item android:drawable="@drawable/ON" android:state_checked="false"/> 
<item android:drawable="@drawable/OFF" android:state_checked="true"/> 
<item android:drawable="@drawable/ON"/>