2017-08-08 9 views
1

私はthisの可能性のある解決策に従っていますが、これはルートのPreferenceScreenにのみ適用されます。私はv7サポートPreferenceScreenとPreferenceFragmentCompatを使用しています。サブスクリーンにプリファレンスが表示されない

preference.xml

<android.support.v7.preference.PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"> 
     <android.support.v7.preference.PreferenceScreen 
      android:key="pref_key_r" 
      android:persistent="false" 
      android:summary="@string/a" 
      android:title="@string/pref_title_r"> 
     </android.support.v7.preference.PreferenceScreen> 
</android.support.v7.preference.PreferenceScreen> 

SettingsFragment.java

@Override 
    public void onCreatePreferences(Bundle savedInstanceState, String rootKey) { 
     addPreferencesFromResource(R.xml.preferences); 
    } 

    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 

     PreferenceScreen preferenceScreen = (PreferenceScreen) getPreferenceScreen().findPreference("pref_key_r"); 
     Preference preference = new Preference(preferenceScreen.getContext()); 

     preference.setKey("pref_key_sp"); 
     preference.setTitle(R.string.sp); 
     preferenceScreen.addPreference(preference); 

} 

私はまだここに何をしないのですか?

+0

'addPreferencesFromResource'の後に' onCreatePreferences'関数で 'Preference'を追加しようとします。 – aborocz

+0

まだ動作していません。 –

答えて

0

これは、前述のように嗜好デザインライブラリから未解決の問題であるようです。here

リンクに記載されているこの問題のいくつかの厄介な回避策がありますが、自分の設定画面が従属画面に依存しているため、この問題が解決するまで個人的に古いandroid.preference.PreferenceFragmentに固執します。

編集:Hereがこの問題のもう1つの解決方法です。

関連する問題