Android控件點擊效果
Android中Button控件是有點擊效果的,但是像TextView、ImageView、各種Layout是沒有點擊效果的,給TextView設置點擊事件后,加個點擊效果用戶觸控反饋會好一點;
最簡單的默認點擊效果:
android:background="?android:attr/selectableItemBackground"
如果該空間已經有背景色了,可以設置前景色
android:foreground="?android:attr/selectableItemBackground"
這樣一個Android原生的漣漪效果就出來了;
注意:
?android:attr/selectableItemBackgroundBorderless <!--無邊界漣漪效果-->
?android:attr/selectableItemBackground <!--有邊界漣漪效果-->
前景色:foreground屬性只能給控件和幀布局設置,其它的布局設置無效果,具體看Android源碼;
也可自定義,按照你的需求來:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_enabled="false" android:state_pressed="true" android:drawable="@drawable/abc_list_selector_disabled_holo_light" />
<item android:state_focused="true" android:state_enabled="false" android:drawable="@drawable/abc_list_selector_disabled_holo_light" />
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/abc_list_selector_background_transition_holo_light" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/abc_list_selector_background_transition_holo_light" />
<item android:state_focused="true" android:drawable="@drawable/abc_list_focused_holo" />
<item android:drawable="@android:color/transparent" />
</selector>