Button控件是TextView的子类,所以TextView的大部分属性也可以在Button中使用,不同的是,我们可以把Button的background属性设置为StateListDrawable,使按钮在不同的状态时呈现不同的图像。
StateListDrawable
StateListDrawable也是Drawable资源的一种,它可以根据不同的状态,设置不同的图片效果,根节点为<selector>,常用属性如下:
- drawable:引用的Drawable位图,我们可以把他放到最前面,就表示组件的正常状态~
- state_focused:是否获得焦点
- state_window_focused:是否获得窗口焦点
- state_enabled:控件是否可用
- state_checkable:控件可否被勾选,eg:checkbox
- state_checked:控件是否被勾选
- state_selected:控件是否被选择,针对有滚轮的情况
- state_pressed:控件是否被按下
- state_active:控件是否处于活动状态,eg:slidingTab
- state_single:控件包含多个子控件时,确定是否只显示一个子控件
- state_first:控件包含多个子控件时,确定第一个子控件是否处于显示状态
- state_middle:控件包含多个子控