IOS之應用程序設置


8.1 應用程序設置概念

8.2 創建設置束

8.3 設置項目種類

8.4 讀取設置

 

8.1 應用程序設置概念

應用程序設置(Application Settings):在iOS和Mac OS很多軟件中都有使用偏好(preferences),例如,在iOS中我們設置WiFi、運用商和壁紙等等。

wps_clip_image-22225

8.2 創建設置束

創建工程

wps_clip_image-10824

Settings Bundle(設置束)

一個應用程序的使用偏好,是存儲在一個Root.list的XML文件中的,在這個文件中是與Settings Bundle關聯起來的。可以在Root.list中指定設置項目的類型,可以有常規字段類型、划塊、開關和子視圖類型等等。

創建一個設置束

wps_clip_image-2213

wps_clip_image-31479

上圖中在Resource文件夾下添加設置束文件Settings.bundle(默認名稱)。展開Settings.bundle文件夾:

Root.plist圖標 是設置屬性的屬性列表

en.lproj文件夾 是本地化應用程序時使用的

Root.plist的PreferenceSpecifiers節點

wps_clip_image-29875

wps_clip_image-27285wps_clip_image-8222

8.3 設置項目種類

生成的設置束文件設置項目

從上面的運行的應用程序看,我們沒有編寫任何一行代碼系統就已經幫我們創建好一些設置項目了。

wps_clip_image-14500

PSGroupSpecifier

設置項目Type為PSGroupSpecifier用於指示該項目是一個新分組的開始,其后的每個項目都將是此分組的一部分,直到一個Type值為PSGroupSpecifier的項目之前。

在本例子中我們還要設置Title為Group,有多個Group時候Title不能重復。

PSTextFieldSpecifier

設置項目Type為PSTextFieldSpecifier是指示該項目是一個特定的使用偏好字段類型。其它項目的說明:

wps_clip_image-1955

PSToggleSwitchSpecifier

設置項目Type為PSToggleSwitchSpecifier是指示該項目是一個特定的使用偏好開關類型。其它項目的說明:

wps_clip_image-17703

PSSliderSpecifier

設置項目Type為PSSliderSpecifier是指示該項目是一個特定的使用偏好滑塊類型。其它項目的說明

wps_clip_image-28803

為滑塊添加最大最小值圖片

wps_clip_image-22627

Show Package Contents來訪問束的內容。這將打開一個新的窗口。將圖標文件復制到此文件夾中。這樣束就能找到這兩個圖標文件了。

添加最大最小值圖片文件結構

wps_clip_image-25049

具體往束里設置圖片:

wps_clip_image-17762

運行結果

wps_clip_image-4470

添加子設置視圖

wps_clip_image-9692

添加完子視圖,運行程序:

wps_clip_image-10421

8.4 讀取設置

讀取應用程序中設置

我們使用NSUserDefaults類讀取用戶設置,通常使用

NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];

NSUserDefaults獲得值方法有:

arrayForKey:  boolForKey:  dataForKey:

dictionaryForKey:  floatForKey:  integerForKey:

objectForKey: stringArrayForKey:  stringForKey:

wps_clip_image-8763

MainViewController.h

wps_clip_image-10475

MainViewController.m

wps_clip_image-22228

FlipsideViewController.h

wps_clip_image-21572

FlipsideViewController.m

wps_clip_image-20077

wps_clip_image-22775

運行

wps_clip_image-7421

 

注:
1 本教程是基於關東升老師的教程
2 基於黑蘋果10.6.8和xcode4.2
3 本人初學,有什么不對的望指教
4 教程會隨着本人學習,持續更新
5 教程是本人從word筆記中拷貝出來了,所以格式請見諒


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM