android - 切换 textColor 不起作用

标签 android components switch-statement textcolor

我在使用标准 android Switch 组件时遇到了一个奇怪的问题。

我已经分配了我的自定义跟踪器和拇指可绘制对象 - 一切看起来和工作正常,除了 textColor 属性的颜色始终是深色(可能是主题颜色)。

尝试通过 android:textColor 属性以十六进制分配颜色,作为资源和选择器。可惜每一次努力都未能达到改变的目的

有人遇到过这个问题吗?

这是我的用法:

<Switch
    android:id="@id/settings_lock_screen_compound_btn"
    android:layout_width="97dp"
    android:layout_height="24dp"
    android:layout_alignParentRight="true"
    android:layout_alignParentTop="true"
    android:textOff="Off"
    android:textOn="On"
    android:textSize="12sp"
    android:thumb="@drawable/switch_thumb"
    android:track="@drawable/switch_track_bg" />

最佳答案

事实证明,您必须使用 switchTextAppearance 并在样式资源中定义 textAppeareance 属性才能更改(或在您的 Java 代码中执行等效操作)。

在这种情况下,Switch 类中的 textColor 属性非常具有误导性,但由于该类继承(不是直接)自 TextView 类,所以这是必需的

关于android - 切换 textColor 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15683941/

相关文章:

android - Intent 在ActivityResult 上返回空值

android - 约束布局 : How to constrain a View's top to the bottom of the view of largest height?

angularjs - 带有属性选择器的组件导致子元素不渲染

c - 在 C 代码中查找 "fallthroughs"

Android 媒体播放器异常在 10 秒后超时

android - Gradle,复制映射文件的任务

reactjs - 我应该为这个 Typescript 组件使用什么 props 和接口(interface)?

angular - angular2中的继承

C# 如何避免多个开关(委托(delegate)?)

c++默认在switch语句中不起作用