在iOS开发中我们会让用户自己在设置中做一些配置,比如说有些App中某些设置,再例如需要修改APP的服务器地址(让然这种设置可能在开发的过程中我们自己会用到)。
那么在Settings.Bundle中支持哪几种配置呢?我们下边来了解一下
1、Group
字面意思很清楚是分组的意思,它用来表示一组设置项
很容易理解,Title就代表分组的名称,Type肯定是Group因为我们再这里定义的就是分组。
2、Multi Value
字面意思一看本以为是多选,后来经过试验发现原来它是做多个值的下拉列表单选选择。
Multi Value的配置的项目有点多,我们拆分开来理解,如下
1)Type 肯定是Multi Value,这个不用过多解释
2)Title 代表这个项目的标题,告诉大家这个选项是干什么的
3)Identifier 代表这个项目的标识,在读取项目配置的时候需要使用
4)Default Value 代表默认值,对应的应该是Values里的项目
5)Titles 所有选项的标题
6)Values 所有选项对应的值
3、Slider
Slider很好理解,我们在开发的过程中使用过类似的控件,就是拖拉进度条
它当中的设置项目也挺多,也逐条解释一下
1)Type不用解释了肯定是Slider
2)Identifier代表这个项目的唯一标识
3)Default Value 默认值
4)Minimum Value 设置的最小值
5)Maximum Value 设置的最大值
6)Min Value Image Filename 左端最小值部分图标
7)Max Value Image Filename 右端最大值部分图标
5、Text Field
设置的项目依然很多,下面一一来解释
1)Type就不解释了,Title则是这个输入框的标题,说明这个文本框输入的内容是什么。
2)Identifier代表这个项目的唯一标识
3)Default Value 这个文本框默认值
4)Text Field is Secure 是否为安全输入,如果设置为YES那么输入的内容会以圆点出现
5)Autocapitalization Style 自动大写,其中一共有四个值: None(无)、Sentences(句子首字母大写)、Words(单词首字母大写)和All Characters(所有字母大写)。
6)Autocorrection Style:自动纠正拼写,如果开启,你输入一个不存在的单词,系统会划红线提示。有三个值:Default(默认)、No Autocorrection(不自动纠正)和Autocorrection(自动纠正)。
7)Keyboard Type:键盘样式。有五个值:Alphabet(字母表,默认)、Numbers and Punctuation(数字和标点符号)、Number Pad(数字面板)、URL(比Alphabet多出了.com等域名后缀)和Email Address(比Alphabet多出了@符合)。
6、Title
这个就不做什么解释了,通过图片很明了,它只有Type类型标题和唯一标识这几个项目。
7、Toggle Switch
它就像是等的开关一样,算是一个开关选项设置
它其中包含Type,Title,唯一标识,还有Default Value,其中Default Value是Bool类型的值,作为开关使用
如何在项目中使用Settings.Bundle文件呢,下面我们来了解一下
通过新建可以将Settings.Bundle文件添加到项目中,名字直接默认就好不用修改。
2、那么添加了很多设置,读取设置的值要怎么操作呢?其实很简单只要像使用UserDefalts那样使用就行了,很简单。这里不对读取进行赘述。
当然如果直接使用UserDefaltsz直接读取读不到的话,那么需要把SettingBundle注册进去,注册方式如下:
UserDefaults.standard.register(defaults: [String:Any]())
当然如果直接使用UserDefaltsz直接读取读不到的话,那么需要把SettingBundle注册进去,注册方式如下:
UserDefaults.standard.register(defaults: String:Any)