Android ToggleButton с Nine Patch перестает работать - PullRequest
2 голосов
/ 06 ноября 2011

это ситуация:

myTheme.xml:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <style name="myTheme" parent="android:Theme.Translucent">
        <item name="android:windowBackground">@color/windowBackground</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:colorForeground">#FFFFFF</item>
        <item name="android:buttonStyleToggle">@style/ToggleButton</item>
    </style>

    <style name="ToggleButton" parent="@android:style/Widget">
        <item name="android:background">@drawable/toggle_list</item>
        <item name="android:textOn">""</item>
        <item name="android:textOff">""</item>
        <item name="android:disabledAlpha">?android:attr/disabledAlpha</item>
    </style>
</resources>

toggle_list.xml:

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:id="@+android:id/background" android:drawable="@android:color/transparent" />
    <item android:id="@+android:id/toggle" android:drawable="@drawable/toggle_selector" />
</layer-list>

toggle_selector.xml:

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

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

<item name="android:buttonStyleToggle">@style/ToggleButton</item>

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

...