android - 如何更改关闭状态下开关的拇指颜色

标签 android togglebutton android-switch

我在表单中使用默认开关,我需要更改关闭状态下开关的拇指颜色。以下是我使用过的代码和样式,并且打开状态下的拇指颜色已更改。如何在关闭状态下更改拇指颜色?

<Switch
 android:id="@+id/trip_switch"
 android:layout_width="wrap_content"
 android:layout_height="wrap_content"
 android:theme="@style/SelectionSwitch"
 android:switchMinWidth="56dp"
 android:layout_marginStart="12dp"
 android:checked="true"
 android:textOff="nonrecc"
 android:textOn="recc"/>

 <style name="SelectionSwitch" parent="Theme.AppCompat.Light">
        <item name="colorControlActivated">#124964</item>
        <item name="colorSwitchThumbNormal">#124964</item>
        <item name="android:colorForeground">#124964</item>
    </style>

enter image description here

enter image description here

最佳答案

注意::已弃用:适用于 android.support.V7.Widget.AppCompat,这意味着它可以在 API 7 之前的设备上运行。

使用AppCompat中的SwitchCompat或 Material 库中的SwitchMaterial,如下所示:

<androidx.appcompat.widget.SwitchCompat
          android:id="@+id/trip_switch"
          android:layout_width="wrap_content"
          android:layout_height="wrap_content"
          android:theme="@style/SelectionSwitch"
          android:switchMinWidth="56dp"
          android:layout_marginStart="12dp"
          android:checked="true"
          android:textOff="nonrecc"
          android:textOn="recc"/>

要更改状态的颜色:更改不同状态的颜色:#124964

<style name="SelectionSwitch" parent="Theme.AppCompat.Light">
        <item name="colorControlActivated">#FF0000</item>
        <item name="colorSwitchThumbNormal">#000000</item>
        <item name="android:colorForeground">#124964</item>
</style>

Activity 状态时更改颜色:(示例:在 Activity 时将颜色更改为红色)

<item name="colorControlActivated">#FF0000</item>

关闭状态时更改颜色:(示例:关闭时将颜色更改为黑色)

<item name="colorSwitchThumbNormal">#00000</item>

关于android - 如何更改关闭状态下开关的拇指颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64567037/

相关文章:

android - 我如何更改 EditText 光标旋钮颜色 android(不是光标颜色旋钮)

Android ToggleButton切换状态问题

android - 动画切换按钮错误膨胀类 android.widget.ToggleButton

android - 具有自定义布局的 SwitchPreference 监听器

Android 开关 - 使拇指高度大于轨道高度,如何?

android - 如何设置开关的回收 View 以在每个开关上执行不同的功能

android - 我应该在什么上下文中使用 AlertDialog.Builder?

两个不同设备上的两个应用程序之间的 Android 通信

java - 通过 postDelayed 方法在 toast 中显示倒计时?

java - 切换按钮不适用于 SharedPreferences