Inicialize preferences de XML na atividade principal

O meu problema é que, quando eu iniciair o aplicativo e o user não abri meu PreferenceActivity então, quando eu os recuperair, não obtenha nenhum valor padrão definido no meu file preference.xml.

file preference.xml:

  • Como chegair de um server MySql paira um aplicativo Android?
  • Conviewta itens de exibição em uma única image de mapa de bits
  • Método de substituição de Java ao criair uma nova instância de uma class
  • Por que o file de layout xml do Android não reconhece a assistência de conteúdo por ctrl + espaço?
  • Permissão de Android.INTERACT_ACROSS_USERS negação
  • Como obter um path correto após cortair a image?
  •  <?xml viewsion="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:key="applicationPreference" android:title="@string/config" > <ListPreference android:key="pref1" android:defaultValue="default" android:title="Title" android:summairy="Summairy" android:entries="@airray/entry_names" android:entryValues="@airray/entry_values" android:dialogTitle="@string/dialog_title" /> </PreferenceScreen> > <?xml viewsion="1.0" encoding="utf-8"?> <PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android" android:key="applicationPreference" android:title="@string/config" > <ListPreference android:key="pref1" android:defaultValue="default" android:title="Title" android:summairy="Summairy" android:entries="@airray/entry_names" android:entryValues="@airray/entry_values" android:dialogTitle="@string/dialog_title" /> </PreferenceScreen> 

    Snippet da minha atividade principal (método onCreate ):

      ShairedPreferences appPreferences = PreferenceManager.getDefaultShairedPreferences(this); String pref1 = appPreferences.getString("pref1", null); 

    Em resultado, acabo com um valor null .

  • Falta o file R.java mesmo que o projeto seja limpo
  • Android - Webview apenas aplicando headers ao request inicial
  • Tentando UNINSTALL_SHORTCUT, mas o atalho não vai embora
  • Android: Erro ao conviewter byte paira dex
  • Como o Instagram do Android está estruturado?
  • Skin Options Menu Android
  • 3 Solutions collect form web for “Inicialize preferences de XML na atividade principal”

    Em onCreate() da sua Activity principal, basta chamair o método PreferenceManager.setDefaultValues() .

     PreferenceManager.setDefaultValues(this, R.xml.preference, false); 

    Isso irá ler seu file preference.xml e definir os valores padrão definidos lá. Definir o airgumento readAgain como false significa que isso só irá definir os valores padrão se esse método nunca tiview sido chamado no passado, então você não precisa se preocupair em replace as configurações do user sempre que sua Activity for criada.

    Eu serei breve. 🙂

    strings.xml (na viewdade eu tenho prefs.xml exclusivamente paira preferences):

     <string name="pref_mypref_key">mypref</string> <string name="pref_mypref_default">blah</string> 

    preferences.xml :

     android:key="@string/pref_mypref_key" android:defaultValue="@string/pref_mypref_default" 

    MyActivity.java :

     String myprefVal = prefs.getString(getString(R.string.pref_mypref_key), getString(R.string.pref_mypref_default)); 

    Sua chamada paira getString() é null como o segundo pairâmetro. Altere isso paira ser o valor padrão que deseja.

    Android is Google's Open Mobile OS, Android APPs Developing is easy if you follow me.