Android: TextColor Of Disabled Button In Selector Not Showing?
Answer :
You need to also create a ColorStateList
for text colors identifying different states.
Do the following:
Create another XML file in
res\color
named something liketext_color.xml
.<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- disabled state --> <item android:state_enabled="false" android:color="#9D9FA2" /> <item android:color="#000"/> </selector>
In your
style.xml
, put a reference to thattext_color.xml
file as follows:<style name="buttonStyle" parent="@android:style/Widget.Button"> <item name="android:textStyle">bold</item> <item name="android:textColor">@color/text_color</item> <item name="android:textSize">18sp</item> </style>
This should resolve your issue.
1.Create a color folder in /res/ folder and in color folder create on xml:
text_color_selector.xml
<?xml version="1.0" encoding="utf-8"?> <selector xmlns:android="http://schemas.android.com/apk/res/android"> <!-- disabled state --> <item android:state_enabled="false" android:color="#776678" /> <item android:color="#ffffff"/> </selector>
2.Now Create a xml layout:-
<Button android:id="@+id/button_search" android:layout_width="652dp" android:layout_height="48dp" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginTop="18dp" android:background="@android:color/transparent" android:text="Hello Bhaskar" android:textColor="@color/text_color_selector"/>
The most easy solution is to set color filter to the background image of and button as I saw here
You can do as follow:
if ('need to set button disable') button.getBackground().setColorFilter(Color.GRAY, PorterDuff.Mode.MULTIPLY); else button.getBackground().setColorFilter(null);
Hope I helped someone...
Comments
Post a Comment