मेरे पास एक बटन है जिसमें एक खींचने योग्य और टेक्स्ट शामिल है। मैं चाहता हूं कि बटन की पृष्ठभूमि सामान्य सामान्य से अलग हो (अधिमानतः एक सादा रंग)। यह ठीक काम करता है, मैं बस XML फ़ाइल में android:background
विशेषता का उपयोग करता हूं और तदनुसार रंग असाइन करता हूं। हालांकि, मैं चयनित या केंद्रित (राज्य चयनकर्ता) जब पृष्ठभूमि को एक अलग रंग में बदलना चाहता हूं। android:background
विशेषता के रूप में इस एक्सएमएलकस्टम बटन स्थिति पृष्ठभूमि रंग कैसे सेट करें?
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:color="@color/green" />
<item android:state_focused="true" android:state_pressed="true" android:color="@color/green" />
<item android:state_focused="false" android:state_pressed="true" android:color="@color/green" />
<item android:color="@color/white" />
</selector>
और सेट:
मैं परिभाषित रंगों के साथ एक drawable फ़ोल्डर में एक चयनकर्ता (जो अच्छी तरह से जब एक बटन के पाठ के साथ काम कर काम करता है), इसलिए तरह बनाने का प्रयास किया है, तो जैसे:
android:background="@drawable/button_state"
लेकिन इस का कारण बनता है एक शक्ति के पास हुए कहा:
Caused by: android.content.res.Resources$NotFoundException: File res/drawable/button_state.xml from drawable resource ID #0x7f020070
लेकिन संसाधन वहां है। क्या आप पृष्ठभूमि स्थिति को कस्टमाइज़ नहीं कर सकते? यदि आप कर सकते हैं, कैसे? या मैं गलत क्या कर रहा हूँ? सहायता के लिए धन्यवाद!
आप निश्चित रूप से चयनकर्ता को पृष्ठभूमि खींचने योग्य के रूप में उपयोग कर सकते हैं। आपने 'button_state.xml' कहां रखा? –
मैंने इसे ड्रॉ करने योग्य फ़ोल्डर में रखा क्योंकि मैं अक्सर करता हूं। और लॉन्च होने पर ऐप फोर्स बंद हो जाता है, इसलिए इसे मेरी एक्सएमएल फाइल – chRyNaN
को स्वीकार नहीं करना चाहिए या शायद यह एक्सएमएल फ़ाइल को पहचानता है, क्योंकि यदि मैं इसे टेक्स्टकॉलर विशेषता के साथ उपयोग करता हूं तो यह ठीक काम करता है। केवल जब मैं पृष्ठभूमि विशेषता के साथ इसका उपयोग करता हूं तो यह बल – chRyNaN