[英]Layout issue with my android preferences
最近開始搞弄Android,想在我的應用程序中創建一個偏好設置屏幕。 為此,我正在使用android UI設置指南 。 但是,當我將SettingsFragment
加載到屏幕上時,第一個PreferenceCategory
位於操作欄的后面。 我看不出是什么原因造成的。 我之所以知道這一點,僅是因為我隱藏了操作欄並在后面看到了它。 如果我可以稍微降低一點,我會很高興的。 但是對這些首選項的格式了解不多。
這是我為創建此文件所做的工作。 我需要這個片段的布局嗎? 如果是這樣,我該如何添加?
SettingsFragment.java
public class SettingsFragment extends PreferenceFragment {
@Override
public void onCreate(Bundle saveInstanceState){
super.onCreate(saveInstanceState);
((SettingsActivity) getActivity()).getActionBar().show();
((SettingsActivity) getActivity()).getActionBar().setTitle(" Settings");
//Loading the preference XML for the user profile settings
addPreferencesFromResource(R.xml.preferences);
}
}
SettingsActivity.java
public class SettingsActivity extends Activity implements SharedPreferences.OnSharedPreferenceChangeListener {
//@TargetApi(Build.VERSION_CODES.HONEYCOMB)
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// Display the fragment as the main content.
//setContentView(R.layout.fragment_settings);
getFragmentManager().beginTransaction().replace(android.R.id.content, new SettingsFragment()).commit();
}
的preferences.xml
<?xml version="1.0" encoding="utf-8"?>
<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android">
<PreferenceCategory
android:title="PROFILE SETTINGS"
android:key="pref_user_settings">
<Preference
android:key="perf_username"
android:summary="geddon"
android:title="@string/perf_username">
</Preference>
<Preference
android:key="perf_gender"
android:summary="Female"
android:title="Gender">
</Preference>
<Preference
android:key="perf_email"
android:summary="geddon@gmail.com"
android:title="Email">
</Preference>
</PreferenceCategory>
<PreferenceCategory
android:title="@string/perf_user_settings"
android:key="pref_key_preferences_settings">
<ListPreference
android:key="perf_country"
android:title="Country"
android:dialogTitle="Country"
android:defaultValue="USA">
</ListPreference>
<Preference
android:key="perf_password"
android:summary="password"
android:title="Change Password">
</Preference>
</PreferenceCategory>
</PreferenceScreen>
截圖
嘗試在活動中設置布局。
setContentView(R.layout.activity_layout);
其中activity_layout只是一個空的framelayout或其他內容。 然后在活動中顯示操作欄。 而且我認為這可以做到。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.