6
谷歌android studio的標準設置活動現在顯示第一個標題「常規」。所以我修改了代碼,但在getPreferenceScreen()的第一次出現時,我得到了java.lang.NullPointerException。addPreference(fakeHeader);爲什麼我無法將第一個標題添加到getPreferenceScreen?
private void setupSimplePreferencesScreen() {
if (!isSimplePreferences(this)) {
return;
}
PreferenceCategory fakeHeader = new PreferenceCategory(this);
fakeHeader.setTitle(R.string.pref_header_notifications);
getPreferenceScreen().addPreference(fakeHeader);
addPreferencesFromResource(R.xml.pref_general);
fakeHeader = new PreferenceCategory(this);
fakeHeader.setTitle(R.string.pref_header_notifications);
getPreferenceScreen().addPreference(fakeHeader);
addPreferencesFromResource(R.xml.pref_notification);
bindPreferenceSummaryToValue(findPreference("username"));
bindPreferenceSummaryToValue(findPreference("password"));
bindPreferenceSummaryToValue(findPreference("server"));
}
@Override
@TargetApi(Build.VERSION_CODES.HONEYCOMB)
public void onBuildHeaders(List<Header> target) {
if (!isSimplePreferences(this)) {
loadHeadersFromResource(R.xml.pref_headers, target);
}
}
<header
android:fragment="com.example.eslam.rottapharm.SettingsActivity$GeneralPreferenceFragment"
android:title="@string/pref_header_general" />
</preference-headers>
是的,我做了這種修改嘗試獲取第一部分的標題標題,但徒勞無功,即使在原始代碼仍然沒有標題的常規部分中顯示,因爲您告訴我們。 –
我已經更新了我的答案。這應該對你有所幫助。 – marius
你能解釋一下這個解決方案嗎 –