我PreferenceFragment在Android中加载时遇到问题。在这一点上,这是一个非常基本的实现,我想稍后在其工作时进行扩展。
问题在于,导航到后,仅显示第一个首选项SettingsFragment。
我没有收到任何错误,但是logcat向我显示了这个:
W/PathParser: Points are too far apart 4.000000596046461
我用谷歌搜索,但是没有任何有用的解决方案。
代码如下:
MainActivity通过NavigationDrawer导航
navigate() 是使用 FragmentManager
case R.id.nav_settings:
navigate(new SettingsFragment(), "settingsFragment", false);
break;
Run Code Online (Sandbox Code Playgroud)
设置片段
public class SettingsFragment extends PreferenceFragment implements SharedPreferences.OnSharedPreferenceChangeListener {
public SettingsFragment() { }
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
addPreferencesFromResource(R.xml.preferences);
}
@Override
public void onResume() {
super.onResume();
getPreferenceScreen().getSharedPreferences().registerOnSharedPreferenceChangeListener(this);
}
@Override
public void onPause() {
super.onPause();
getPreferenceScreen().getSharedPreferences().unregisterOnSharedPreferenceChangeListener(this);
}
@Override
public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, String s) { }
}
Run Code Online (Sandbox Code Playgroud)
prefences.xml
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen …Run Code Online (Sandbox Code Playgroud) android android-preferences sharedpreferences preferencescreen preferencefragment
android ×1