如果我使用带有选择器的ImageButton作为其背景,是否有一种状态我可以改变它会改变它的外观?现在我可以让它在按下时更改图像,但似乎没有“突出显示”或“选中”或类似状态,这让我可以随意切换其外观 .
这是我的XML;它只会在按下时改变外观 .
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_focused="true" android:state_pressed="false" android:drawable="@drawable/map_toolbar_details_selected" />
<item android:state_focused="true" android:state_pressed="true" android:drawable="@drawable/map_toolbar_details_selected" />
<item android:state_focused="false" android:state_pressed="true" android:drawable="@drawable/map_toolbar_details_selected" />
<item android:drawable="@drawable/map_toolbar_details" />
5 回答
这对我有用:
然后在java中:
为了平滑过渡,您还可以提到动画时间:
ToggleImageButton
,它实现Checkable
接口并支持OnCheckedChangeListener
和android:checked
xml属性:RES /值/ attrs.xml:
没有更多图像的最佳方法:
试试这个:
也是我成功的颜色
在
res/drawable
文件夹中创建XML文件 . 例如,"btn_image.xml":您可以组合您喜欢的文件,例如,将“bg_state_1”更改为“bg_state_deselected”,将“bg_state_2”更改为“bg_state_selected” .
在任何这些文件中,您可以编写如下内容:
在布局文件中创建具有以下属性的ImageView或ImageButton:
后来的代码: