我有一个如下的图像按钮。
为什么我们需要切换选定状态?
<ImageButton
android:id="@+id/imagebutton"
android:layout_width="250dp"
android:layout_height="100dp"
android:background="@drawable/perm_group_calendar"/>
perm_group_calendar.xml
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="true" android:drawable="@drawable/perm_group_calendar_selected" />
<item android:drawable="@drawable/perm_group_calendar_normal" />
</selector>
选择状态本身不起作用。我从这个SO找到了答案:
如何使用带有选定状态的Android ImageButton?
我使用了下面的代码,现在它可以工作了。
imageButton.setOnClickListener(new OnClickListener() {
public void onClick(View button) {
if (button.isSelected()){
button.setSelected(false);
//...Handle toggle off
} else {
button.setSelected(true);
//...Handled toggle on
}
}
});
为什么我们需要切换选定状态?
checked
属性的ToggleButton
来实现这个功能。 - nhaarman