iOS開發(fā)之 settings.bundle

目前應(yīng)用市場使用 settings.bundle 的項目相較于少數(shù),但是在開發(fā)過程中可以起到一定的作用,比如打包一次,由用戶自行決定切換環(huán)境等 以及關(guān)于后臺登錄時長等設(shè)置均可以在此進行配置化處理,話不多說,上菜~

相信聰明的你已經(jīng)邁出第一步了,項目結(jié)構(gòu)中通常不包含settings.bundle配置包,所以首先新建一個

新建settings.bundle

新建后可以看到里面包含的目錄結(jié)構(gòu),看到en.lproj相信你大概猜到了這個是處理國際化業(yè)務(wù)的地方,我們先進行配置管理,國際化后期再進行梳理,那么我們配置的主要文件就依靠Root.plist了

Settings.bundle目錄

先點擊 Root.plist 打開該文件,然后再點擊Preference Items條目的加號,可以看到里面可以添加的類型:Group、Multi Value、Slider、Text Field、Title、Toggle Switch

選擇你需要的選項進行添加以下分別為不同的類型所創(chuàng)建的內(nèi)容

Group 主要顯示為分組形勢,Title為分組名稱
Multi Value為選擇器,***需要注意的是Titles和Values需要一一對應(yīng),如果未填寫可能出現(xiàn)不展示的情況***
Slider
Text Field,可以設(shè)置鍵盤類型、校驗類型、是否加密等
Title
Toggle Switch

到這里,已經(jīng)可以創(chuàng)建不同類型的preference了,那么里面有一個非常重要的?Identifier?標(biāo)志符,你是否有注意到呢???? ?這個非常重要哈,設(shè)置里處理后的數(shù)據(jù)我們需要在代碼中進行獲取進行對應(yīng)的處理,就需要用到我們再添加preference item時所創(chuàng)建的對應(yīng)的?Identifier 標(biāo)識符。Root.plist中的Identifier就是使用NSUserDefaults保存數(shù)據(jù)時的key值,在代碼中使用時,需要保持和此處填寫的一致。但是需要特別注意:NSUserDefaults的優(yōu)先級高于Root.plist,下面我們來看一下如何取值


我們上面分別創(chuàng)建了不同的類型,里面對應(yīng)不同的Identifier,我們可以在所需要處理的地方進行對應(yīng)的處理:

NSUserDefaults *standardDef = [NSUserDefaults standardUserDefaults];

// Multi Value 取值如下,其余的參照此方式進行取值即可

NSString *multiValue? = [standardDef objectForKey:@"choose_preference"];

當(dāng)然,也可以進行賦值操作,只需要對應(yīng)上在Root.plist中所填寫的Identifier即可。

如有疑問可以評論或留言,看到了會及時回復(fù)????

加油,你是最pang的 ????

附贈demo,有需要的自行下載

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容