Cómo cambiar el color del texto de la categoría de preferencia en Android?

El atributo textColor no funciona. Aquí está mi XML:

<PreferenceCategory android:title="Title" android:textColor="#00FF00"> 

¿Algunas ideas?

6 Solutions collect form web for “Cómo cambiar el color del texto de la categoría de preferencia en Android?”

Utilice esto modifican para requisitos particulares Clase de PreferenceCategory:

 public class MyPreferenceCategory extends PreferenceCategory { public MyPreferenceCategory(Context context) { super(context); } public MyPreferenceCategory(Context context, AttributeSet attrs) { super(context, attrs); } public MyPreferenceCategory(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); } @Override protected void onBindView(View view) { super.onBindView(view); TextView titleView = (TextView) view.findViewById(android.R.id.title); titleView.setTextColor(Color.RED); } } 

Y agregue esto en su archivo Pref.xml:

 <ali.UI.Customize.MyPreferenceCategory android:title="@string/pref_server" /> 

Una solución es crear un tema para su PreferenceScreen. Así que en su themes.xml o styles.xml (mejor para ponerlo en themes.xml):

 <style name="PreferenceScreen" parent="YourApplicationThemeOrNone"> <item name="android:textColor">@color/yourCategoryTitleColor</item> </style> 

Luego en tu AndroidManifest.xml:

 <activity android:name="MyPreferenceActivity" ... android:theme="@style/PreferenceScreen" > </activity> 

Funcionó perfectamente para mí.

Una manera fácil de hacerlo es configurar el diseño personalizado para la categoría de preferencias aquí:

 <PreferenceCategory android:layout="@layout/preferences_category" android:title="Privacy" > 

A continuación, establezca el código dentro de su archivo de disposición preferences_category:

 <TextView android:id="@android:id/title" android:textColor="@color/deep_orange_500" android:layout_width="match_parent" android:layout_height="wrap_content" android:textSize="16sp" android:textStyle="bold" android:textAllCaps="true"/> 

Para cambiar el color del texto de la categoría de preferencia, solo establece un tema en tu PreferenceActivity en tu Manifiesto de Android y asegúrate de que el elemento colorAccent existe. Este color es tomado por su PreferenceCategory .

 public class MyPreferenceCategory extends PreferenceCategory { public MyPreferenceCategory(Context context) { super(context); // TODO Auto-generated constructor stub } public MyPreferenceCategory(Context context, AttributeSet attrs) { super(context, attrs); } public MyPreferenceCategory(Context context, AttributeSet attrs, int defStyle) { super(context, attrs, defStyle); // TODO Auto-generated constructor stub } @Override protected View onCreateView(ViewGroup parent) { // It's just a TextView! TextView categoryTitle = (TextView)super.onCreateView(parent); categoryTitle.setTextColor(parent.getResources().getColor(R.color.orange)); return categoryTitle; } } 

Y en su prefs.xml:

 <com.your.packagename.MyPreferenceCategory android:title="General"> . . . </com.your.packagename.MyPreferenceCategory> 

O también puedes usar esta respuesta

Otra manera alrededor será mencionar el tema en su AppTheme , nivel de la aplicación

  <style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar"> .....//your other items <item name="preferenceTheme">@style/PrefTheme</item> </style> <style name="PrefTheme" parent="@style/PreferenceThemeOverlay"> <item name="preferenceCategoryStyle">@style/CategoryStyle</item> </style> <style name="CategoryStyle" parent="Preference.Category"> <item name="android:layout">@layout/pref_category_view</item> </style> 

XML : pref_category_view

 <?xml version="1.0" encoding="utf-8"?> <TextView android:id="@android:id/title" style="?android:attr/listSeparatorTextViewStyle" xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:textColor="@color/red" android:layout_height="wrap_content" /> 

Para obtener más personalización, consulte v7 Preferences res

Importante : Estoy utilizando PreferenceFragmentCompat de lib v7 Preference .

Happy_Coding;

  • La mejor manera de almacenar en caché json
  • ¿Cómo regresar de la pantalla de preferencias a la actividad principal?
  • Restablecer valores predeterminados de Preferencia
  • OnPreferenceChangeListener para cada ajuste
  • ¿Cómo llamo a un PreferenceFragment específico de una PreferenceActivity?
  • Cómo cambiar la tipografía de dialogMessage de EditTextPreference en Android?
  • Actualizar android PreferenceFragment
  • Compruebe si un inicio de sesión y una contraseña ya se encuentran en Preferencias
  • Android CheckBoxPreference: cómo deshabilitar y habilitar otras preferencias en el cambio de preferencias
  • ¿Por qué la configuración de settings.xml se superpone a la barra de herramientas / barra de herramientas?
  • RequestWindowFeature (Window.FEATURE_NO_TITLE); Da la excepción
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.