在界面编写过程通常会遇到像,一个按钮,平时是一个颜色,按上去是一个颜色,按完后又恢复到原来的颜色 这种情况。
实现它的原理就是给这个图片的不同状态,设置一张图片或者颜色,然后让系统根据按钮的状态自动切换。这就需要用到selector
本文以Button的背景图片为例
1、先设置颜色选择器
第一步,创建一个名字为 btn_bg_selector.xml 的文件 。
开发工具是AndroidStudio的情况下,需要在drawable文件夹上右键 --> New -->Drawable resource file就可打开创建面板 。
然后输入你的文件名btn_bg_selector点击Ok。
第二步、把你准备好的两张图片copy到图片资源目录drawable文件夹下
picNormal.png 按钮一般状态下显示
picPressed.png 按钮按下显示
第三步、然后把两张图片添加到selector的item中,具体如下
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:drawable="@drawable/picPressed" android:state_pressed="true"/>
<item android:drawable="@drawable/picNormal" />
</selector>
这样选择器就设置好了
2、修改布局文件
给按钮设置背景
<Button
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@drawable/btn_bg_selector"
android:text="点我"/>
运行你的demo看效果吧