¿PreferenceFragment con el fondo transparente?

He creado un PreferenceFragment con dos categorías y una casilla de verificación, sin embargo, cuando lo muestro en mi aplicación, el fondo parece ser transparente.

Puedo ver las principales actividades, los campos y los de PreferenceFragment se colocan encima de los de la actividad principal … ¿cuál es la solución a esto?

En mi actividad principal lo estoy haciendo para abrir el PreferenceFragment cuando el botón de configuración está seleccionado:

@Override public boolean onOptionsItemSelected(MenuItem item) { //handle presses on action bar items switch (item.getItemId()) { case R.id.action_settings: getFragmentManager().beginTransaction().replace(android.R.id.content, new SettingsFragment()).commit(); return true; default: return super.onOptionsItemSelected(item); } } 

Mi código PreferenceFragment tiene este aspecto: public class SettingsFragment extends PreferenceFragment {

 @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); //load the preferences from an XML resource addPreferencesFromResource(R.xml.preferences); } } 

Mis preferencias.xml tiene este aspecto:

 <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:layout_height="wrap_content" android:layout_width="wrap_content" android:layout="@layout/fragment_settings"> <PreferenceCategory android:title="@string/server_prefs_title" android:key="pref_key_server_settings" > <CheckBoxPreference android:key="pref_server_url" android:title="@string/pref_server_url" android:summary="@string/pref_server_url_summ" android:defaultValue="true" /> </PreferenceCategory> <PreferenceCategory android:title="@string/company_prefs_title" android:key="pref_key_company_settings" > </PreferenceCategory> </PreferenceScreen> 

He intentado lo que otra respuesta sobre el desbordamiento de la pila sugirió y agregado esto a mi fragmento de la preferencia, sin embargo, aunque bloquea los campos visibles de la actividad principal, apenas aparece ser una máscara, porque los campos del fragmento también están siendo afectados por el color que Lo puse:

 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = super.onCreateView(inflater, container, savedInstanceState); view.setBackgroundColor(getResources().getColor(android.R.color.black)); return view; } 

¡¡¡Gracias por la ayuda!!!

EDIT: Creo que respondí mi propia pregunta mientras escribía esto … He añadido:

 addPreferencesFromResource(R.xml.preferences); 

Después de hacer:

  View view = super.onCreateView(inflater, container, savedInstanceState); view.setBackgroundColor(getResources().getColor(android.R.color.black)); 

¿Es esa la manera correcta de resolver esto?

Agregue esto en su Fragmento (SettingsFragment) que extiende el archivo PreferenceFragment:

 @Override public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) { View view = super.onCreateView(inflater, container, savedInstanceState); view.setBackgroundColor(getResources().getColor(android.R.color.white)); return view; } 

La única forma en que podía evitar esos problemas era usar una clase preferenceActivity: ¿Cómo se crean Fragmentos de preferencias y preferencias en Android? Por WannaGetHigh

Intente cambiar todas las importaciones de Fragment a android.app.Fragment en lugar de android.support.v4.app.Fragment. Además, asegúrese de que está accediendo a su gestor de fragmentos con getFragmentManager () no getSupportFramentManager ().

Referencia: http://ausmarton.blogspot.com.au/2014/01/preferencefragment-shows-up-with.html

  • Compatibilidad para SwitchPreference (pre ICS)?
  • Preferencias de Android y fragmentos de diálogo
  • Uso de findviewbyid en preferenciaactividad
  • Preferencias personalizadasCategorías
  • Cuándo usar CheckBox y cuando cambie
  • Android 5.0 - las casillas de verificación de las preferencias no son visibles
  • PreferenciaActividad getSupportLoaderManager ()
  • El elemento ListView no permanecerá "seleccionado"
  • ¿Cómo establecer el valor RingtonePreference del código?
  • Preferencias sin métodos obsoletos
  • ActionBar en PreferenceFragment no volver a calcular la altura y el tamaño de fuente
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.