android UI开发中最经常用到的就是各种控件的点击事件,比如TextView和Button,点击时背景色有个变化提醒用户触发了点击事件,当用户手指抬起时,背景色又恢复正常,这种效果配置方法很简单,两步即可。
第一步 编写一个XML文件该文件位于drawable文件夹下面,根据使用的背景的资源不同,写法也不同,比如有的背景直接使用的是颜色,有的是用的是图片,下面列举几个写法。
这是使用图片资源的写法:
这是使用自定义shape的写法:
这是直接使用颜色的写法:
注意,上面的写法中,属性android:drawable有同学会误写成android:background,的确我们常用background属性来设置背景,并且这样写编译也不会报错,但是运行起来会报错的,所以要注意用的是android:drawable而不是android:background。
第二步 设置控件属性为要添加点击效果的控件设置background属性,如下
android:background="@drawable/第一步的xml文件的名字"补充材料:
android:state_selected 是否选中android:state_focused 是否获得焦点android:state_pressed 是否点击android:state_enabled 是否设置是否响应事件,指所有事件
在写drawable xml文件时,我们在运用android:state_pressed、android:state_focused等状态属性时,一定要知道每个item语句是顺序执行的,遇到第一个符合条件的item即执行该语句并且不再往下面执行,所以当你想要的点击效果没有出来时,检查一下item语句的顺序。