【发布时间】:2011-06-06 05:01:02
【问题描述】:
我有一个带有图像按钮的主屏幕小部件。我的按钮正在处理待处理的意图,但我似乎不知道如何在按下按钮时更改按钮图像。
我尝试使用选择器,它适用于我的小部件测试活动,但不适用于远程视图。
如何在主屏幕小部件中实现此功能?
【问题讨论】:
-
嗨乔希,你有没有办法让这个新闻状态保持不变?谢谢
标签: android widget selector imagebutton homescreen
我有一个带有图像按钮的主屏幕小部件。我的按钮正在处理待处理的意图,但我似乎不知道如何在按下按钮时更改按钮图像。
我尝试使用选择器,它适用于我的小部件测试活动,但不适用于远程视图。
如何在主屏幕小部件中实现此功能?
【问题讨论】:
标签: android widget selector imagebutton homescreen
您可以在远程视图中设置不同的图像。
remoteView.setInt(R.id.buttonimg, "setImageResource", R.drawable.button_on);
【讨论】:
我能够通过将选择器移动到它自己的 XML 文件中并放入 res/drawable 然后将该 xml 文件作为我在 app-widget 布局 xml 中的图像按钮的资源引用来使其工作。
buttonimg.xml:
<?xml version="1.0" encoding="utf-8"?>
<selector
xmlns:android="http://schemas.android.com/apk/res/android">
<item
android:state_pressed="false"
android:drawable="@drawable/button_off" />
<item
android:state_pressed="true"
android:drawable="@drawable/button_on" />
<item
android:drawable="@drawable/button_off" />
</selector>
widget_layout.xml
<ImageButton
android:id="@+id/buttonimg"
android:layout_width="50dp"
android:layout_height="50dp"
android:layout_x="0px"
android:layout_y="2px"
android:clickable="true"
android:src="@drawable/button"
>
不过,我现在有一个不同的问题。选择器只允许我更改图像 onPress。发布时,图像变回 >:-(
如何在按下时更改图像状态并保持该状态直到下一次按下(如 ToggleButton)?
【讨论】: