Cambiar el color de fondo de Preferencia

Tengo un PreferenceCategory , archivo xml y he definido todas las preferencias en él, lo llamo de la clase que se extiende PreferenceActivity . No puedo establecer el fondo de mi pantalla de configuración, esta pantalla se muestra con la ayuda del archivo xml que se muestra a continuación. Por favor, vea que ya he definido el android:background="#041A37" , todavía la pantalla sigue siendo el color por defecto: negro.

 public class MyPreferenceActivity extends PreferenceActivity { @Override public void onCreate(Bundle savedInstanceState) { Context mContext=super.getBaseContext(); super.onCreate(savedInstanceState); addPreferencesFromResource(R.layout.preference); //v.setBackgroundColor(Color.rgb(4, 26, 55)); } } 

Preference.xml es

 <?xml version="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:background="#041A37" > <PreferenceCategory> <com.dropcall.SeekBarPreference android:background="#041A37" android:defaultValue="5" android:key="@string/Interference_Delay" android:progressDrawable="@drawable/seekbardrawable" android:title="Seconds Delay until intereference" /> <com.dropcall.SeekBarPreference2 android:defaultValue="30" android:key="@string/Drop_Delay" android:progressDrawable="@drawable/seekbardrawable" android:title="Seconds delay until drop" /> <CheckBoxPreference android:background="@drawable/state_normal" android:defaultValue="true" android:key="@string/Drop_Option" android:title="Close after call drop" /> <CheckBoxPreference android:background="@drawable/state_normal" android:defaultValue="true" android:key="@string/Timer_Option" android:title="Start timers on launch" /> </PreferenceCategory> </PreferenceScreen> 

Aunque he definido android:background="#041A37" en cada archivo, el fondo no se convierte en azul marino, o cualquier otro color para esa materia. Sigue siendo el color predeterminado, negro. Cómo cambiar el color de fondo. Por favor, hágamelo saber cualquier punteros / indirectas, si usted hubiera hecho frente a mismo problema déjeme saber qué cambios usted hizo para fijar el color de fondo.

Puede definir un tema y luego configurarlo para su PreferenceActivity en el manifiesto. Su tema puede entonces definir un color de fondo o una imagen de windowBackground si usted prefiere eso.

Manifiesto:

  <activity android:label="@string/app_label" android:name=".client.PreferencesActivity" android:theme="@style/PreferencesTheme"> <intent-filter> </intent-filter> </activity> 

A continuación, agregue el tema a sus estilos.xml

 <style name="PreferencesTheme"> <item name="android:windowBackground">@drawable/background_image</item> <item name="android:background">#FFEAEAEA</item> </style> 

En el fragmento anterior hay tanto un color de fondo como una imagen de fondo definida para mostrar cómo hacerlo.

Esto funcionó para mí

 getListView().setBackgroundColor(Color.TRANSPARENT); getListView().setCacheColorHint(Color.TRANSPARENT); getListView().setBackgroundColor(Color.rgb(4, 26, 55)); 

Otro trabajo alrededor del color es que usted crea un tema para la actividad de las preferencias y pone el color de fondo de las vistas de la lista también:

 <style name="PrefsTheme" parent="@android:style/Theme.Black.NoTitleBar"> <item name="android:windowBackground">@color/prefs_bg</item> <item name="android:textColor">@color/text_color</item> <item name="android:listViewStyle">@style/listViewPrefs</item> </style> <style name="listViewPrefs" parent="@android:style/Widget.ListView"> <item name="android:background">@color/prefs_bg</item> <item name="android:cacheColorHint">@color/prefs_bg</item> </style> 

android:background no es un atributo disponible, según la documentación .

Es posible que el tema de la PreferenceActivity para lograr su cambio de color, aunque no he intentado esto, porque quiero que mis preferencias se parecen a las del resto de Android, para mejorar la usabilidad de la aplicación.

O usted puede también hacer dibujable como su fondo:

GetListView (). SetBackgroundDrawable (getResources (). GetDrawable (R.drawable.bluegradient));

Nota: setBackgroundDrawable() está obsoleto. En su lugar, utilice setBackground() .

GetListView (). SetBackground (getResources (). GetDrawable (R.drawable.bluegradient));

Especifique un diseño lineal con una vista de texto adjunta y especifique el color de fondo y adjunte este xml a preferencecategory utilizando la propiedad de diseño.

 <PreferenceCategory android:layout="@layout/preftitle" > 

Donde preftitle es un xml que tiene un diseño lineal y una vista de texto adjunta.

Vaya a res>values>styles.xml> y agregue este código a su <style > </style> el estilo debe debe ser tema de base de la aplicación en este @color/activ es los recursos de color agregados a los colores.

 <style name="app_theme" parent="@android:style/Theme"> <item name="android:windowBackground">@color/activ</item> <item name="android:windowContentOverlay">@drawable/title_bar_shadow</item> <item name="android:listViewStyle">@style/TransparentListView</item> </style> 

Si utiliza app_theme nombre de la etiqueta de estilo, a continuación, añadir como esto a su manifiesto

 <application android:name=".XXXXXX" android:allowBackup="true" android:icon="@drawable/ic_launcher" android:label="@string/app_name" android:theme="@style/app_theme" > //here 

Si sólo desea cambiar su fondo

  • ¿Hay una manera de ejecutar el emulador de Android en modo CDMA?
  • ¿Por qué no se lanza mi actividad por URL?
  • Significado de parpadeo rojo en el emulador
  • Intel Atom Android (x86) emulador HANG Mac OS X 10.9
  • El emulador no se cierra
  • ¿Prueba el navegador Android sin el emulador?
  • Detectar cuando el usuario introduce los datos en edittext muestra inmediatamente la respuesta
  • Android JobScheduler no se inicia en el emulador
  • ¿Cómo identificar los factores que ayudarán a reproducir bugs de representación web para los navegadores web android?
  • Soporte para el brazo apk en el emulador de Android construido para X86
  • No se puede iniciar el emulador de Android en Mac
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.