StateListDrawable用于組織多個Drawable對象,顧名思義,StateList,它會隨著目標組件狀態(比如得到/失去焦點,勾選/未勾選,可用/不可用,按下/未按下,等等)的改變而自動切換
StateListDrawable對象的XML文件的根元素是<selector.../>,可包含多個<item.../>元素
下面是一個高亮顯示正在輸入的文本框的例子
創建一個普通Android xml文件,根元素選擇selector,文件名為my_image,創建完以后把文件移動到res/drawable-mdpi文件夾下
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused = "true"
android:color = "#f44"
/>
<item android:state_focused = "false"
android:color = "#111"
/>
</selector>
下面的主界面xml中引用上面定義的樣式
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<EditText
android:id="@+id/editText1"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="@drawable/my_image"
android:ems="10" />
<EditText
android:id="@+id/editText2"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:textColor="@drawable/my_image"
android:ems="10" />
</LinearLayout>
效果如下,當焦點在文本框時,文字變為高亮顯示
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061
微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元

