一、準(zhǔn)備
<?xmlversion="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
? ? ? <item android:state_selected="true" android:color="@color/white" />
? ? ? <item android:state_focused="true" android:color="@color/white" />
? ? ? <item android:state_pressed="true" android:color="@color/white" />
? ? ? <item android:color="@color/color_999999" />
</selector>
編寫完Color選擇器后,就將((TextView)contentView.findViewById(R.id.pop_label_1_tv)).setTextColor(R.drawable.x);這樣設(shè)置,完成后發(fā)現(xiàn)選擇器居然不起作用。
腦袋有點(diǎn)暈,竟然忘了這是個(gè)ColorStateList,所以:
ColorStateList color = getResources().getColorStateList(R.drawable.bg_message_pop_tab_txt_color);
((TextView)contentView.findViewById(R.id.pop_label_1_tv)).setTextColor(color);
使用代碼設(shè)置顏色,需要這樣做才是正確的;
或者可以在布局文件中,直接給TextView 設(shè)置textColor屬性,使用drawable也是可以的
如果是因?yàn)槭录r截問題,類外考慮,最好加上clickable=true,或者給TextView設(shè)置OnlickListener