麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 系統 > Android > 正文

Android之PreferenceActivity應用詳解(2)

2020-04-11 12:42:29
字體:
來源:轉載
供稿:網友
看到很多書中都沒有對PreferenceActivity做介紹,而我正好又在項目中用到,所以就把自己的使用的在這總結一下,也方便日后查找。
PerferenceActivity是什么,看下面的截圖:
image            image 
Android系統截圖(左)MusicPlayer Setting截圖(右)
好了,我們看到Android系統本身就大量用到了PreferenceActivity來對系統進行信息配置和管理,那么它是怎么保存數據的呢,如何創 建PrefenceActivity的呢,更關鍵是怎樣觸發相應事件的呢。
先看第一個問題,PreferenceActivity是如何保存的數據。對Android系統了解的都知道,Android系統有四種基本的數據保存方 法,一是SharedPreference,二是文件,三是SQLite,四是ContentProvider。看出來了吧,Preference,對就 是使用SharedPreferneces以鍵值對的形式進行保存的,當然,我們也可以通過SharedPreferences來獲取 PreferenceActivity設置的值。
第二個問題:如何創建一個PreferenceActivity。 其實Eclipse提供了相應的創建工具,和創建Layout是基本相同的。步驟如下:
創建Android項目,并添加一個Android xml文件。注意,這次選擇的不是Layout,而是Preference,而且注意Folder路徑是 res/xml.
image 
添加完成之后,在res/xml/下打開添加的preference.xml文件。可以看到Android也為我們提供兩種編輯模式,可視化的結構 設計及xml源碼設計。推薦使用structure進行創建。如圖所示:
image 
下面我們看看PrefeneceActivity都提供了哪幾種元素可供使用。點擊Add按鈕,在打開的新窗口中可以看到以下幾項: 
    image 
CheckBoxPreference:CheckBox選擇項,對應的值的ture或flase。如圖:
image 
EditTextPreference:輸入編輯框,值為String類型,會彈出對話框供輸入。
image 
ListPreference: 列表選擇,彈出對話框供選
image 
Preference:只進行文本顯示,需要與其他進行組合使用。
image 
PreferenceCategory:用于分組。效果如下:
image 
PreferenceScreen:PreferenceActivity的根元素,必須為它。
RingtonePreference:系統玲聲選擇。
image 
OK,Preferenc的基本元素介紹完畢,下一節將使用它們創建一個完整的Preference并進行顯示。
-------------------------------------------------------------------------------
分析MusicPlayer Setting,第一部分為“我的位置”,包括“使用無線網線”和“使用GPS”兩個部分,而且都是CheckBox,根據上節學習,應該包括一個 PreferenceCategory和兩個CheckBoxPreference。
Xml代碼:
復制代碼 代碼如下:

<PreferenceCategory android:title="我的位置" android:key="set_local">
<CheckBoxPreference android:key="apply_wifi"
android:summary="使用無線網絡在應用程序(例如Google地圖)中查看位置"
android:title="使用無線網絡" android:defaultValue="true">
</CheckBoxPreference>
<CheckBoxPreference android:key="apply_gps"
android:summary="定位到街道級別(需要消耗更多的電量以及天氣允許)"
android:title="使用GPS">
</CheckBoxPreference>
</PreferenceCategory>

以上代碼當然也可以用Android提供的IDE工具直接生成。視頻結構如下:
image 
PreferenceCategory 屬性分析:
title:顯示的標題
key:唯一標識(至少在同一程序中是唯一),SharedPreferences也將通過此Key值進行數據保存,也可以通過key值獲取保存的信息 (以下相同)。
CheckBoxPreference屬性分析:
Key:唯一標識.
title:顯示標題(大字體顯示)
summary:副標題(小字體顯示)
defaultValue:默認值(當然,此處只能是true或false了)
Preference.xml的第二部分為“無線和網絡設置”,此部分包括的內容比較多,也稍微復雜,一步一步來分析。
xml代碼:
復制代碼 代碼如下:

<PreferenceCategory android:title="無線和網絡設置">
<CheckBoxPreference android:key="apply_fly"
android:summary="禁用所有無線連接" android:title="飛行模式">
</CheckBoxPreference>
<CheckBoxPreference android:key="apply_internet"
android:summary="禁用通過USB共享Internet連接"
android:title="Internet共享">
</CheckBoxPreference>
<CheckBoxPreference android:key="apply_wifi"
android:summary="打開Wi-Fi" android:title="Wi-Fi">
</CheckBoxPreference>
<Preference android:summary="設置和管理無線接入點" android:title="Wi-Fi設置"
android:dependency="apply_wifi" android:key="wifi_setting">
</Preference>
<CheckBoxPreference android:key="apply_bluetooth"
android:summary="啟用藍牙" android:title="藍牙">
</CheckBoxPreference>
<Preference android:summary="管理連接、設備設備名稱和可檢測性"
android:title="藍牙設置" android:dependency="apply_bluetooth"
android:key="bluetooth_setting">
</Preference>
<EditTextPreference android:key="number_edit"
android:title="輸入電話號碼">
</EditTextPreference>
<ListPreference android:title="部門設置" android:entries="@array/department"
android:entryValues="@array/department_value"
android:dialogTitle="選擇部門"
android:key="depart_value">
</ListPreference>
<RingtonePreference android:ringtoneType="all" android:title="玲 主站蜘蛛池模板: 中国女人内谢69xxxx天美 | gogo全球大胆高清人露出91 | 少妇的肉体的满足毛片 | 操操操日日日干干干 | 欧美激情精品久久久久久久久久 | 99日韩精品视频 | a一级黄色大片 | 免费国产自久久久久三四区久久 | 成人啪啪18免费网站 | 中国性xxx | 色综合久久久久久久久久久 | 国产一级毛片高清视频 | 久久精品欧美视频 | 久久免费视频一区 | 九九热九九爱 | 久久夜夜视频 | 国产午夜精品一区二区三区嫩草 | 国产区二区 | 国产精品剧情一区二区三区 | 欧美精品激情在线 | 欧美激情性色生活片在线观看 | 9191色 | 18视频在线观看娇喘 | 成人小视频免费在线观看 | 黄色成人小视频 | 日本网站一区二区三区 | 欧美黄色免费视频 | 久久影院一区二区三区 | 欧产日产国产精品v | 毛片大全 | 成人综合免费视频 | 久久久久久久一区二区三区 | av一二三四区 | av在线更新 | 美国一级毛片片aa久久综合 | 久久av免费观看 | 91真视频 | 欧美大电影免费观看 | 欧美一区二区黄 | 国产成年人视频网站 | 免费观看一级 |