1

私は Android で答えに従っています: Create a toggle button with image and no textすべては問題ありませんでしたが、アプリケーションをロードしてトグル ボタンをクリックすると、オフ状態からオン状態に変化しなかったように何も起こりません。では、スライドを機能させるにはどうすればよいですか? はいの場合、何をコーディングする必要がありますか? ありがとう btn_toggle_bg.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/btn_toggle" />
</layer-list>

btn_toggle.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/close" />
<item android:state_checked="true" 
    android:drawable="@drawable/open" />
</selector>

レイアウト.xml

           <ToggleButton
               android:id="@+id/toggleButton"
               style="@style/toggleButton"
               android:layout_width="wrap_content"
               android:layout_height="match_parent"
               android:background="@drawable/btn_toggle_bg"
                android:onClick="onToggleClicked"
               android:layout_marginLeft="150dp" />

style.xml

<style name="Widget.Button.Toggle" parent="android:Widget">
<item name="android:background">@drawable/btn_toggle_bg</item>

<item name="android:disabledAlpha">?android:attr/disabledAlpha</item>
<style name="toggleButton"  parent="@android:Theme.Black">
 <item name="android:buttonStyleToggle">@style/Widget.Button.Toggle</item>

</style>
4

1 に答える 1

1

3 つの手順を実行すると、アプリのすべてのトグル ボタンに新しいスタイルが適用されます。

toggle.xml: (描画可能なフォルダー)

<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>

styles.xml: (値フォルダー)

<style name="toggle" parent="@android:style/Widget.Button.Toggle">
    <item name="android:background">@drawable/toggle</item>
    <item name="android:textOn"> </item>
    <item name="android:textOff"> </item>
</style>

最後のステップでは、現在の AppTheme にカスタム トグル ボタンがあることを教える必要があります。

<style name="AppTheme" parent="android:Theme.Holo.Light">
    <item name="android:buttonStyleToggle">@style/toggle</item>
</style>
于 2013-10-30T11:06:31.607 に答える