2016-06-21 1 views
3

Вот:Как изменить цвет текста PreferenceCategory/PreferenceScreen

preferences.xml

<?xml version="1.0" encoding="utf-8"?> 
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" > 

    <PreferenceCategory 
     android:key="@string/pref_basicsettings_key" 
     android:title="@string/pref_basicsettings_title" > 
     <CheckBoxPreference 
      android:defaultValue="@string/pref_test1_default" 
      android:key="@string/pref_test1_key" 
      android:summary="@string/pref_test1_dlg" 
      android:title="@string/pref_test1_title" /> 
     <CheckBoxPreference 
      android:defaultValue="@string/pref_test2_default" 
      android:key="@string/pref_test2_key" 
      android:summary="@string/pref_test2_dlg" 
      android:title="@string/pref_test2_title" /> 
    </PreferenceCategory> 
</PreferenceScreen> 

BasicSettingsActivity.java

public class BasicSettingsActivity extends PreferenceActivity { 

    public static final String TAG = BasicSettingsActivity.class 
      .getSimpleName(); 

    /** Called when the activity is first created. */ 
    @SuppressWarnings("deprecation") 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     prefs.registerOnSharedPreferenceChangeListener(mSharedPreferenceListener); 

     // add preference resource 
     addPreferencesFromResource(com.testapp.R.xml.basic_settings); 
    } 
} 

Как изменить цвет текста в PreferenceCategory?

ответ

3

Я добавил новый стиль:

<style name="PreferenceScreen" parent="Theme.AppCompat"> 
    <item name="android:textColor">#ffffff</item> 
    <item name="android:textColorPrimary">#ffffff</item> 
    <item name="colorPrimary">#ff0000</item> 
    <item name="colorPrimaryDark">#ff0000</item> 
    <item name="colorAccent">#ff0000</item> 
    <item name="android:background">#CCCCCC</item> 
</style> 

и включил его в своей деятельности:

<activity android:name="com.smartipcamera.owlcam.ui.BasicSettingsActivity" 
    android:theme="@style/PreferenceScreen" > 
</activity> 
0

добавить новый стиль

<style name="SettingStyle"> 
    <item name="android:background">#FFFFFF</item> 
    <item name="android:textViewStyle">@style/PreferenceStyle</item> 
</style> 
<style name="PreferenceStyle" parent="android:Widget.TextView"> 
    <item name="android:textColor">#000000</item> 
</style> 

и включить его в предпочтении деятельности.

public class SettingsActivity extends AppCompatActivity { 

protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.setting); 

    setTheme(R.style.SettingStyle); 
    .... 

}