दिलचस्प पोस्ट
स्विफ्ट – NSUserDefaults का प्रयोग करके उच्चतम स्कोर स्ट्रिंग के रूप में दिए गए अभिव्यक्ति का मूल्यांकन करें एक तत्व के लिए लागू सभी सीएसएस नियम खोजें सेवा में $ HTTP प्रतिसाद प्रसंस्करण सी # विभाजन स्ट्रिंग लेकिन विभाजित वर्ण / विभाजक रखने के लिए मैं तत्वों फ्लोट कैसे करूँ? आप MySQL और Postgres दोनों के लिए एक केस असंवेदनशील क्वेरी कैसे लिख सकते हैं? Data.table में एक कुंजी सेट करने का क्या उद्देश्य है? फ़्लोटिंग पॉइंट अंकगणित और दशमलव में 0.1 का प्रतिनिधित्व कैसे करें कर्ल, एक यूआरएल को एक चर में रीडायरेक्ट करें कोणीयज में लाइन ब्रेक को सुरक्षित रखें Android: CollapsingToolbarLayout और SwipeRefreshLayout अटक जाते हैं ASP.NET वेब फ़ॉर्म के साथ निर्भरता इंजेक्शन का उपयोग कैसे करें पहचान और गैर पहचानने संबंधों के बीच अंतर क्या है? IE में किसी भी व्यक्ति को HTML पर सेट नहीं किया जा सकता

एंड्रॉइड बटन चयनकर्ता

यह एक बटन चयनकर्ता है जैसे कि जब सामान्य लाल दिखाई देता है, तब दबाया जाता है जब यह ग्रे दिखाई देता है

मैं यह पूछना चाहूंगा कि कैसे कोड को और अधिक सीधे संशोधित किया जा सकता है, जैसे पाठ का आकार और रंग भी शुरू हो सकता है? बहुत धन्यवाद!

<item android:state_pressed="true" > <shape xmlns:android="http://schemas.android.com/apk/res/android"> <stroke android:width="2dp" android:color="@color/black" /> <solid android:color="@color/grey"/> <padding android:left="5dp" android:top="2dp" android:right="5dp" android:bottom="2dp" /> <corners android:radius="5dp" /> </shape> </item> <item> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <stroke android:width="2dp" android:color="@color/black" /> <solid android:color="#FF6699"/> <padding android:left="5dp" android:top="2dp" android:right="5dp" android:bottom="2dp" /> <corners android:radius="5dp" /> </shape> </item> 

वेब के समाधान से एकत्रित समाधान "एंड्रॉइड बटन चयनकर्ता"

आपको बस अपनी लेआउट फ़ाइल में button selector को सेट करना होगा।

 <Button android:id="@+id/button1" android:background="@drawable/selector_xml_name" android:layout_width="200dp" android:layout_height="126dp" android:text="Hello" /> 

और हो गया।

संपादित करें

button_effect.xml डायरेक्टरी में button_effect.xml फ़ाइल है

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/numpad_button_bg_selected" android:state_selected="true"></item> <item android:drawable="@drawable/numpad_button_bg_pressed" android:state_pressed="true"></item> <item android:drawable="@drawable/numpad_button_bg_normal"></item> </selector> 

इस में, आप देख सकते हैं कि वहाँ 3 button_effect हैं, जैसा कि मैंने ऊपर लिखा था, आपको इस button को अपने button button_effect देना होगा। आपको button_effect साथ selector_xml_name को बदलने की आवश्यकता है

आप किसी राज्य सूची के साथ पाठ का आकार परिवर्तन नहीं प्राप्त कर सकते हैं। पाठ रंग और पाठ का आकार बदलने के लिए ऐसा करें:

लिखावट का रंग

पाठ का रंग बदलने के लिए, आप रंग राज्य सूची संसाधन बना सकते हैं। यह res/color/ निर्देशिका में स्थित एक अलग संसाधन होगा। लेआउट xml में आपको इसे android:textColor लिए मान के रूप में सेट करना होगा android:textColor विशेषता इसके बाद रंग चयनकर्ता में कुछ ऐसा होगा:

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:color="@color/text_pressed" /> <item android:color="@color/text_normal" /> </selector> 

शब्दों का आकर

आप पाठ के आकार को बस संसाधनों के साथ नहीं बदल सकते। कोई "डिमैन चयनकर्ता" नहीं है आपको इसे कोड में करना होगा और कोई स्पष्ट समाधान नहीं है।

शायद सबसे आसान समाधान View.onTouchListener() का उपयोग हो सकता है और तदनुसार ऊपर और नीचे की घटनाओं को संभालना। इस तरह से कुछ का उपयोग करें:

 view.setOnTouchListener(new OnTouchListener() { @Override public boolean onTouch(View v, MotionEvent event) { switch (event.getAction()) { case MotionEvent.ACTION_DOWN: // change text size to the "pressed value" return true; case MotionEvent.ACTION_UP: // change text size to the "normal value" return true; default: return false; } } }); 

दृश्य का विस्तार करने और setPressed(Boolean) विधि को ओवरराइड करने के लिए एक अलग समाधान हो सकता है। विधि को आंतरिक रूप से कहा जाता है जब दबाया गया राज्य का परिवर्तन होता है। फिर विधि कॉल में तदनुसार पाठ का आकार बदलें (सुपर को कॉल करने के लिए मत भूलना)।

डिज़ाइन किए गए फ़ोल्डर में custom_selector.xml बनाएं

 <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/unselected" android:state_pressed="true" /> <item android:drawable="@drawable/selected" /> </selector> 

तैयार किए गए फ़ोल्डर में चयनित.एक्सएमएल आकार बनाएँ

 <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="90dp"> <solid android:color="@color/selected"/> <padding /> <stroke android:color="#000" android:width="1dp"/> <corners android:bottomRightRadius="15dp" android:bottomLeftRadius="15dp" android:topLeftRadius="15dp" android:topRightRadius="15dp"/> </shape> 

ड्रॉएबल फ़ोल्डर में unselected.xml आकृति बनाएं

 <shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" android:padding="90dp"> <solid android:color="@color/unselected"/> <padding /> <stroke android:color="#000" android:width="1dp"/> <corners android:bottomRightRadius="15dp" android:bottomLeftRadius="15dp" android:topLeftRadius="15dp" android:topRightRadius="15dp"/> </shape> 

मूल्यों फ़ोल्डर के color.xml में चुने हुए / अचयनित स्थिति के लिए निम्नलिखित रंग जोड़ें

 <color name="selected">#a8cf45</color> <color name="unselected">#ff8cae3b</color> 

आप यहां से पूरा समाधान देख सकते हैं

चयनकर्ता को कार्यान्वित करने का सर्वोत्तम तरीका प्रोग्रामेटिक तरीके से उपयोग करने के बजाय एक्सएमएल का इस्तेमाल करना है क्योंकि एक्सएमएलएम के साथ असंगत होना अधिक आसान है।

  <?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:drawable="@drawable/button_bg_selected" android:state_selected="true"></item> <item android:drawable="@drawable/button_bg_pressed" android:state_pressed="true"></item> <item android:drawable="@drawable/button_bg_normal"></item> </selector> 

अधिक जानकारी के लिए मैं इस लिंक का उपयोग करके कार्यान्वित किया http://www.blazin.in/2016/03/how-to-use-selectors-for-botton.html

आप इस कोड का उपयोग कर सकते हैं:

 <Button android:id="@+id/img_sublist_carat" android:layout_width="70dp" android:layout_height="68dp" android:layout_centerVertical="true" android:layout_marginLeft="625dp" android:contentDescription="" android:background="@drawable/img_sublist_carat_selector" android:visibility="visible" /> 

(चयनकर्ता फ़ाइल) img_sublist_carat_selector.xml:

 <?xml version="1.0" encoding="UTF-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/img_sublist_carat_highlight" /> <item android:state_pressed="true" android:drawable="@drawable/img_sublist_carat_highlight" /> <item android:drawable="@drawable/img_sublist_carat_normal" /> </selector>