PreferenceActivity和PreferenceFragment对比
目錄
?
PreferenceActivity 負責加載選項列表界面布局文件
使用PreferenceActivity的步驟
PreferenceFragment 負責加載選項設置界面布局文件
使用PreferenceFragment的步驟
PreferenceActivity 負責加載選項列表界面布局文件
選項列表布局文件是以preference-headers作為根標簽,header 作為子標簽常用的屬性有android:ico指定選項的圖標,android:title指定選項的標題,android:summary指定選項的說明。
PreferenceActivity使用界面布局文件的方式是:重寫PreferenceActivity.onBuildHeaders(List<Header> target)并在方法中調用loadHeadersFromResource(R.xml.preference, target)方法加載布局文件。
使用PreferenceActivity的步驟
1. 創建一個選項列表界面布局文件。
A.在res目錄上右擊,在彈出的快捷菜單上選擇new->Android Resource File,然后在彈出的對話框選擇Resource type 為xml,Root element:選擇preference-headers,然后輸入File name 點擊ok按鈕。
2. 創建一個Activity并繼承PreferenceActivity。
3. 重寫PreferenceActivity的onBuildHeaders方法并在方法中調用loadHeadersFromResource()方法加載布局文件。
代碼如下:
package com.example.filedemo;import android.os.Bundle; import android.preference.PreferenceActivity;import java.util.List;public class PreferenceTestActivity extends PreferenceActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);}@Overridepublic void onBuildHeaders(List<PreferenceActivity.Header> target) {super.onBuildHeaders(target);loadHeadersFromResource(R.xml.preference_list, target);}@Overrideprotected boolean isValidFragment(String fragmentName) {return true;} }?
PreferenceFragment 負責加載選項設置界面布局文件
選項設置布局文件是以PreferenceScreen作為根標簽,PreferenceCategory、CheckBoxPreference、EditTextPreference、ListPreference、SwitchPreference作為子標簽。
PreferenceFragment使用界面布局文件的方式是:重寫onCreate(Bundle savedInstanceState)
并在方法中調用addPreferenceFromResource(R.xml.preference_option);
使用PreferenceFragment的步驟
1. 創建一個選項設置界面布局文件。
A.在res目錄上右擊,在彈出的快捷菜單上選擇new->Android Resource File,然后在彈出的對話框選擇Resource type 為xml,Root element:選擇PreferenceScreen,然后輸入File name 點擊ok按鈕
2. 創建一個Fragment并繼承PreferenceFragment
3. 重寫PreferenceFragment的onCreate方法并在方法中調用addPreferenceFromResource()方法加載布局文件
代碼如下:
package com.example.filedemo;import android.os.Bundle; import android.preference.PreferenceFragment; import android.support.annotation.Nullable;public class BlankFragment extends PreferenceFragment {@Overridepublic void onCreate(@Nullable Bundle savedInstanceState) {super.onCreate(savedInstanceState);addPreferencesFromResource(R.xml.preference_option);} }?
總結
以上是生活随笔為你收集整理的PreferenceActivity和PreferenceFragment对比的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 工作310:uni-初始获取数据onlo
- 下一篇: 博主更换了一个新的CSDN 账号