android xml點擊交互
之前寫一些控件的點擊反饋時大多都用的代碼來調節,今天在看高德地圖的demo是發現了一種用xml設計點擊交互的辦法:
在drawable下新建一個xml 內容如下:
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:drawable="@drawable/mode_transit_off" />
<item android:drawable="@drawable/mode_transit_on" />
</selector>
android:state_pressed="true"
//這一句是當按下時所發生的變化 可以改變圖片 也可以只單是顏色的變化
下面給出一些常用的state狀態,可以根據需要進行選擇:
android:state_pressed 是否按下,如一個按鈕觸摸或者點擊。
android:state_focused 是否取得焦點,比如用戶選擇了一個文本框。
android:state_hovered 光標是否懸停,通常與focused state相同,它是4.0的新特性
android:state_selected 被選中,它與focus state並不完全一樣,如一個list view 被選中的時候,它裏面的各個子組件可能通過方向鍵,被選中了。
android:state_checkable 組件是否能被check。如:RadioButton是可以被check的。
android:state_checked 被checked了,如:一個RadioButton可以被check了。
android:state_enabled 能夠接受觸摸或者點擊事件
android:state_activated 被激活後
android:state_window_focused 應用程序是否在前臺,當有通知欄被拉下來或者一個對話框彈出的時候應用程序就不在前臺了
詳細的一些信息可以點進去查看源碼或看相關官方api。