ImageButton в виджете рабочего стола Android - PullRequest
5 голосов
/ 15 июля 2010

У меня есть виджет рабочего стола с кнопкой изображения.У меня кнопка работает с ожидающим намерением, но я не могу понять, как изменить изображение кнопки, когда она нажата.

Я попытался использовать селектор, и он работает в моей тестовой активности виджетано не в удаленном просмотре.

Как я могу реализовать эту функцию в виджете главного экрана?

Ответы [ 2 ]

3 голосов
/ 02 сентября 2010

Вы можете установить другое изображение в вашем удаленном представлении.

remoteView.setInt(R.id.buttonimg, "setImageResource", R.drawable.button_on);
0 голосов
/ 15 июля 2010

Мне удалось заставить его работать, переместив селектор в его собственный XML-файл и вставив res / drawable, а затем сославшись на этот XML-файл, как мой ресурс для моей кнопки изображения в 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"
>

Теперь у меня другая проблема.Селектор позволяет только изменить изображение на прессе.При выпуске изображение меняется обратно>: - (

Как получить изменение состояния изображения при нажатии и оставаться в этом состоянии до следующего нажатия (например, ToggleButton)?

...