当用户的焦点到达ImageButton时,是否可以指定不同的图像?我想在LinearLayout上显示一个图像按钮,当用户的焦点出现在按钮上或用户按下按钮时更改图像。

感谢。

有帮助吗?

解决方案

是的,你可以这样做。你需要的是一个定义选择器的可绘制xml文件。

<selector xmlns:android...
  <item android:state_enabled="false" android:state_focused="true" android:drawable="..." />
  <item android:state_enabled="true" android:state_focused="false" android:drawable="..." />
</selector>

然后,在布局XML中指定ImageButton时使用此drawable XML的id。

其他提示

先前的答案对我不起作用。这是我在其他地方找到的代码:

    <selector xmlns:android="http://schemas.android.com/apk/res/android" >
         <item android:drawable="@drawable/refresh_pushed" android:state_pressed="true" />
         <item android:drawable="@drawable/refresh" />
    </selector>

您还可以通过添加一行并使用:

为焦点对象添加状态
  

机器人:state_focused = QUOT;真&QUOT;

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top