目錄:[Swift]Xcode實際操做html
本文將演示如何實現添加和讀取程序的配置信息。編程
在項目文件夾【DemoApp】上點擊鼠標右鍵->【New File】建立一個設置束文件swift
->【Settings Bundle】設置束:api
若是想要經過設備的【設置】程序,來展現自定義的的偏好設置,必須先準備好一個設置束app
->【Next】->【Save As】:Setting.bundle保持默認的配置。ide
->保存默認的存儲位置點擊【Create】post
在項目導航區多了一個設置束文件【Setting.bundle】。spa
點擊下拉箭頭,查看設置束的屬性列表文件。code
打開並編輯屬性列表文件:【Root.plist】xml
點擊鼠標右鍵,彈出右鍵菜單,選擇【Show Raw Keys/Values】顯示原始鍵/值選項。
點擊【PreferenceSpecifiers】下拉箭頭,查看全部默認提供的鍵和值。
查看第一個屬性【Item0 Group-Option group】的鍵和值,修改屬性組的名稱:【Title】:Option group
查看第二個屬性【Item1 TextField-Article】的鍵和值,修改屬性鍵的名稱:【Key】:key_article
設置該屬性標題的文字內容:【Title】:Article
查看第三個屬性【Item2 ToggleSwitch-Visible】的鍵和值,修改屬性鍵的名稱:【Key】:key_visible
設置該屬性標題的文字內容:【Title】:Visible
查看第四個屬性【Item3 Slider】的鍵和值,修改屬性鍵的名稱:【Key】:key_value
設置滑桿的默認值【DefaultValue】:50
設置滑桿的最小值【MinimumValue】:1
設置滑桿的最大值【MaximumValue】:100
【運行程序】->點擊底部的【Home】主頁按鈕,退出當前的應用程序。
點擊【Setting】設置->進入應用程序【DemoApp】的偏好設置頁面。
在【Article】文章名稱輸入框內,輸入文章的名稱。【Article】:Strengthen
點擊開關按鈕,設置可見性參數的值。在滑桿上點擊,設置滑桿的值。
Root.plist文件內容:
1 <?xml version="1.0" encoding="UTF-8"?> 2 <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> 3 <plist version="1.0"> 4 <dict> 5 <key>StringsTable</key> 6 <string>Root</string> 7 <key>PreferenceSpecifiers</key> 8 <array> 9 <dict> 10 <key>Type</key> 11 <string>PSGroupSpecifier</string> 12 <key>Title</key> 13 <string>Option group</string> 14 </dict> 15 <dict> 16 <key>Type</key> 17 <string>PSTextFieldSpecifier</string> 18 <key>Title</key> 19 <string>Article</string> 20 <key>Key</key> 21 <string>key_article</string> 22 <key>DefaultValue</key> 23 <string></string> 24 <key>IsSecure</key> 25 <false/> 26 <key>KeyboardType</key> 27 <string>Alphabet</string> 28 <key>AutocapitalizationType</key> 29 <string>None</string> 30 <key>AutocorrectionType</key> 31 <string>No</string> 32 </dict> 33 <dict> 34 <key>Type</key> 35 <string>PSToggleSwitchSpecifier</string> 36 <key>Title</key> 37 <string>Visible</string> 38 <key>Key</key> 39 <string>key_visible</string> 40 <key>DefaultValue</key> 41 <true/> 42 </dict> 43 <dict> 44 <key>Type</key> 45 <string>PSSliderSpecifier</string> 46 <key>Key</key> 47 <string>key_value</string> 48 <key>DefaultValue</key> 49 <integer>8</integer> 50 <key>MinimumValue</key> 51 <integer>1</integer> 52 <key>MaximumValue</key> 53 <integer>10</integer> 54 <key>MinimumValueImage</key> 55 <string></string> 56 <key>MaximumValueImage</key> 57 <string></string> 58 </dict> 59 </array> 60 </dict> 61 </plist>
在項目導航區,打開視圖控制器的代碼文件【ViewController.swift】
在視圖控制器類文件中,讀取上文的偏好設置。
1 import UIKit 2 3 class ViewController: UIViewController { 4 5 override func viewDidLoad() { 6 super.viewDidLoad() 7 // Do any additional setup after loading the view, typically from a nib. 8 9 //UserDefaults類,提供了一個與系統進行交互的編程接口。 10 //該對象能夠保存、恢復應用程序相關的偏好設置,配置數據等。 11 let userDefaults = UserDefaults.standard 12 13 //經過在Root.plist屬性列表文件中,設置的鍵名,讀取對應的文章名稱。 14 let article = userDefaults.object(forKey: "key_article") 15 //以一樣的方式,根據鍵名,讀取布爾值。 16 let visible = userDefaults.object(forKey: "key_visible") 17 //繼續讀取經過滑桿設置的參數值 18 let value = userDefaults.object(forKey: "key_value") 19 20 //在控制檯分別輸出三個參數值 21 print("article:\(String(describing: article))") 22 print("visible:\(String(describing: visible))") 23 print("value:\(String(describing: value))") 24 } 25 26 override func didReceiveMemoryWarning() { 27 super.didReceiveMemoryWarning() 28 // Dispose of any resources that can be recreated. 29 } 30 }