此处实现的是多个按钮中选择一个,另外一个原本高亮的按钮恢复原有默认背景色。
使用selector来改变按钮事件的触发,在此处我用到的只有两个,即android:state_pressed和android:state_selected。
新建一个xml文件,例如button.xml,我把它放在drawable文件夹中。代码如下:
<item
android:state_pressed="true"
android:drawable="@color/second_bcolor" />
<item
android:state_selected="true"
android:drawable="@color/second_bcolor" />
state_pressed即按钮被按下时触发的事件;
state_selected即按钮被选择时触发的事件。
【在这里我所修改的事件则是改变按钮的背景颜色。】
同样,在java文件中修改事件监听的时候,可以使用setSelected(true)或者setSelected(false)来改变该按钮是否被选中。
// 实例化按钮
button_1 = (Button) findViewById(R.id.mainui);
// 默认主界面按钮高亮
button_1.setSelected(true);
效果图如下: