ошибка: атрибут стиля «android: attr/colorSwitchThumbNormal» является закрытым

Я пытаюсь изменить цвет «отключенного» состояния в SwitchCompat. Я добавил это в Styles.xml:

<style name="SwitchTheme" parent="Theme.AppCompat.Light">
    <item name="android:colorControlActivated">#148E13</item>
    <item name="android:colorSwitchThumbNormal">#FF0000</item>
</style>

Когда я компилирую, я получаю следующую ошибку:

error: style attribute 'android:attr/colorSwitchThumbNormal' is private.

Если я прокомментирую эту строку, у меня не будет ошибок, и приложение будет установлено без проблем. Я проверил это, но я думаю, что в моих xml-файлах нет ошибок, так как я получил бы сообщение об ошибке, комментируя эту строку... У меня также нет ни мошеннических xml-файлов, ни мошеннических действий... Кто-нибудь столкнулся с этой проблемой? Как это исправить и изменить цвет отключенного переключателя?

Спасибо.


person Fustigador    schedule 04.04.2019    source источник
comment
Возможный дубликат ресурса ошибки cardslib android:attr/foregroundInsidePadding является закрытым, пока таргетинг на SDK 26   -  person Daniel Beleza    schedule 13.04.2019


Ответы (1)


Вместо этого

<item name="android:colorSwitchThumbNormal">@color/myColor</item>

Попробуй это

<item name="colorSwitchThumbNormal">@color/myColor</item>

Для меня это устранило ошибку, но цвет по-прежнему не применялся. И чтобы это работало, XML-элемент для кнопки «Переключить» не может быть таким:

<Switch .... blla blla blla />

Но вместо этого это должен был быть этот XML-элемент:

<android.support.v7.widget.SwitchCompat ..... blla blla blla/>
person Albos Hajdari    schedule 12.04.2019