Android-Как сделать пользовательскую кнопку переключения

Я хочу создать пользовательскую кнопку-переключатель, например, когда я нажимаю на кнопку, включается звезда, а когда я нажимаю снова, звезда выключается. Я пробовал некоторые коды, но они меняют кнопку на изображение, и когда я нажимаю на нее, изображение меняется. Я имею в виду, что нет кнопки, это просто изображение.

Я хочу, чтобы изображение было внутри кнопки, как кнопка-переключатель по умолчанию, и мне просто нужно изменить изображение внутри нее.

Как я могу это сделать?

Спасибо


person user3718930    schedule 22.06.2014    source источник


Ответы (1)


создайте toggle_selector.xml в res/drawable

<?xml version="1.0" encoding="utf-8"?> 
<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:drawable="@drawable/toggle_on" android:state_checked="true"/>
  <item android:drawable="@drawable/toggle_off" android:state_checked="false"/>
</selector>

примените селектор к кнопке переключения

<ToggleButton
            android:id="@+id/chkState"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:background="@drawable/toggle_selector"
            android:textOff=""
            android:textOn=""/>

Примечание: для удаления текста, который я использовал в приведенном выше коде

textOff=""
textOn=""

ссылка https://stackoverflow.com/a/20300753/712960

person Basbous    schedule 22.06.2014
comment
это именно та проблема, о которой я сказал в своем вопросе, кнопка переключения преобразуется в изображение, я не хочу этого - person user3718930; 23.06.2014