Android 自定义开关按钮

Android 自定义开关按钮,android,slider,switch-statement,Android,Slider,Switch Statement,我有一个关于Android切换按钮的问题。有人知道如何定制它吗?看起来像: 我已经了解了如何使用android:thumb=将圆圈替换为自定义图像,但仍然不确定如何增加整个按钮的宽度,使其占据大部分屏幕宽度,并在其顶部添加文本。还需要为拇指添加一些偏移,就像在图像上一样。我可以通过使用开关来实现这一点,还是我必须自己实现整件事?使用以下方法来实现 <Switch android:id="@+id/th" an

我有一个关于Android切换按钮的问题。有人知道如何定制它吗?看起来像:


我已经了解了如何使用android:thumb=将圆圈替换为自定义图像,但仍然不确定如何增加整个按钮的宽度,使其占据大部分屏幕宽度,并在其顶部添加文本。还需要为拇指添加一些偏移,就像在图像上一样。我可以通过使用开关来实现这一点,还是我必须自己实现整件事?

使用以下方法来实现

<Switch
                    android:id="@+id/th"
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content"
                    app:thumb="@drawable/apptheme_switch_inner_holo_light"
                    app:track="@drawable/apptheme_switch_track_holo_light"
                    app:textOn="@string/switch_yes"
                    app:textOff="@string/switch_no"
                    android:textColor="#000000"
                    />
要更改textOn和textoff的颜色,请使用

android:switchTextAppearance="@style/Switch"
可能重复的
  <selector xmlns:android="http://schemas.android.com/apk/res/android">
        <item android:state_checked="false" android:drawable="@color/red"  />
        <item android:state_checked="true" android:drawable="@color/green"  />
    </selector>
android:background="@drawable/my_btn_toggle
android:switchTextAppearance="@style/Switch"