自定义开关切换按钮

Customized switch toggle button

我不想在 android 中自定义我的开关。问题是默认按钮覆盖了我自己的可绘制对象。

我做了什么:

  1. 创建我自己的图形(2 个图形)
  2. 在 drawable 文件夹中创建一个 xml,它看起来像这样:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@drawable/switch_female" android:state_checked="false"/>
    <item android:drawable="@drawable/switch_male" android:state_checked="true"/>
</selector>
  1. 我的开关定义如下所示:
<Switch
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text=""
            android:textOff=""
            android:textOn=""
            android:id="@+id/genderSwitchOne"
            android:layout_below="@+id/txtViewPersonGender"
            android:layout_centerVertical="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true"
            android:layout_marginTop="25dp"
            android:background="@drawable/gender_switch"/>

但我得到的是:

是否可以删除默认按钮(在女性 "em" 上方)?

提前致谢。

PS:抱歉,我无法在没有块引用的情况下粘贴 android xml。

Switch XML 元素上设置 android:thumb="@null"。这将从显示中删除可绘制的拇指。

编辑:由于上面产生了 NPE,android:thumb="@android:color/transparent" 应该可以解决问题,因为这将作为实际的 ColorDrawable.

加载