2015-06-29 1 views
6

Я использую android.support.v7.widget.SwitchCompat и я встречая следующие проблемыAndroid: SwitchCompat, обивка и цвет выдает

  • Мой стиль, который включает в себя colorControlActivated не применяется
  • Переключатель отступы с помощью Android имен и Res-Auto не имеет никакого эффекта
  • Как установить текст большого пальца, чтобы быть все заглавные буквы

Мой код

styles.xml

Примечание я попытался с NO родителем и Theme.AppCompat.Light.NoActionBar

<style name="ToggleSwitchStyle" parent="Theme.AppCompat"> 
    <item name="colorControlActivated">@color/emerald</item> 
</style> 

Мой SwitchCompat определен в макете XML

<android.support.v7.widget.SwitchCompat 
    android:layout_width="wrap_content" 
    android:layout_height="wrap_content" 
    android:checked="true" 
    android:padding="5dp" 
    android:textOff="@string/no" 
    android:textOn="@string/yes" 
    app:showText="true" 
    android:switchPadding="5dp" 
    app:switchPadding="10dp" 
    app:theme="@style/ToggleSwitchStyle" 
    android:theme="@style/ToggleSwitchStyle" 
    android:textAllCaps="true" 
    app:thumbTextPadding="5dp" 
    > 

Таким образом, в приведенных выше textAllCaps делает не делайте текст на большом пальце всеми шапками.

Переключатель набивка не имеет никакого эффекта

Тема используя Res-Auto или Android имен не имеет никакого влияния на активный цвет.

Однако я могу изменить активный цвет, изменяя цветовой акцент на моем материале темы

<!-- Application theme. --> 
    <style name="MaterialDesign" parent="Theme.AppCompat.Light.NoActionBar"> 
     <item name="colorPrimary">@color/colorPrimary</item> 
     <item name="colorPrimaryDark">@color/colorPrimaryDark</item> 
     <item name="colorAccent">@color/yellow</item> 
    </style> 

ответ

0

Убедитесь, что styles.xml находится в папке значения-V21. У меня были аналогичные проблемы с switchcompat для изменения цвета.

Это сработало для меня. Хранение styles.xml в папках значений-v21 и ColorAccent для изменения цвета переключателя.

<?xml version="1.0" encoding="utf-8"?> 
<resources> 

    <style name="colortoggle"> 
     <item name="colorAccent">@color/continue_button</item> 
    </style> 
</resources> 

Для выпуска большого пальца: textAppearance и связанный с ним setTypeface() методы контроля начертание шрифта и стиль текста этикетки, в то время как switchTextAppearance и связанный с ним seSwitchTypeface() методы управления, что из пальца.