我正在尝试实施新的Google PreferenceFragmentCompat
。
我这样做了:
@Override
public void onCreatePreferences(Bundle bundle, String s) {
addPreferencesFromResource(R.xml.settings);
}
也可以在onCreate方法中完成。
问题1。 (有什么区别?)
我在PreferenceScreen
中有R.xml.settings
。
我也有(R.layout.fragment_settings
):
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
return inflater.inflate(R.layout.fragment_settings, container, false);
}
中包含android:id="@android:id/list"
。在常规PreferenceFragment
上,此方法可以运行并将Preferences
加载到此列表中。
但现在,我有这个错误:
10-02 12:10:20.064 23270-23270/ru.intercom18.IntercomMWP E/AndroidRuntime﹕ FATAL EXCEPTION: main
Process: ru.intercom18.IntercomMWP, PID: 23270
java.lang.NullPointerException: Attempt to invoke virtual method 'void android.support.v7.widget.RecyclerView.setAdapter(android.support.v7.widget.RecyclerView$Adapter)' on a null object reference
at android.support.v7.preference.PreferenceFragmentCompat.bindPreferences(PreferenceFragmentCompat.java:466)
at android.support.v7.preference.PreferenceFragmentCompat.onActivityCreated(PreferenceFragmentCompat.java:271)
问题2。 (我应该如何将PreferenceScreen加载到我的自定义settings_fragment.xml中的列表中)