我正在尝试为我的应用程序构建一个偏好屏幕。我创建了一个名为的类SettingsFragment
,它从PreferenceFragment
. 我没有从 xml 加载首选项,因为我需要动态加载一些数据。这就是我以编程方式构建一切的原因。一切都按预期显示。但是顶部有一些额外的填充。见下图:
我不确定为什么会这样。下面是我在SettingsFragment
课堂上写的代码:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
PreferenceScreen root = getPreferenceManager().createPreferenceScreen(getActivity());
root.setTitle("Hello World");
PreferenceCategory cat1 = new PreferenceCategory(root.getContext());
root.addPreference(cat1);
ListPreference lang = new ListPreference(root.getContext());
lang.setEntries(new CharSequence[]{"English", "Bangla"});
lang.setEntryValues(new CharSequence[]{"en", "bn"});
lang.setTitle("Choose Language");
lang.setSummary("English");
cat1.addPreference(lang);
CheckBoxPreference check = new CheckBoxPreference(root.getContext());
check.setTitle("Title Check");
cat1.addPreference(check);
setPreferenceScreen(root);
}
仅供参考,我NavigationDrawer
在我的应用程序中使用。当SettingsFragment
从抽屉中单击导航项时加载。