iOS Settings.bundle 创建和使用(系统设置中展

2018-05-28  本文已影响0人  石虎132

//联系人: 石虎 QQ:1224614774 昵称:嗡嘛呢叭咪哄                          

           QQ群:807236138  群称:iOS 技术交流学习群

一、概念

 在iOS开发中很多时候开发者需要让用户自行设置一些系统的配置项目,在系统设置中展示App版本等信息

在设备设置中,App权限下面展示自定义内容,如类似下图圈住区域内容

如图:

二、官方文档 Settings.bundle配置说明

 1. Settings.bundle 文档链接:

 2. 在Settings.bundle中支持如下几种配置项:

三、开始设置

1.在项目中添加Settings.bundle文件

图1:

图2:

图3:

2.修改Settings.bundle的Root.plist列表

图4:

*1.Group类似于UITableView中的Group分组,用来表示一组设置项,配置如下所示:

配置项说明:

(1)Title:表示分组的显示标题

(2)Type:默认是Group

(3)FooterText:Group的底部显示的文字内容

*2.Title

(1)Type:默认是Title

(2)Title:配置项显示的标题

(3)Identifier:设置项的标识符,用于读取配置项的配置内容

(4)Default Value:默认的值

四、效果图:

原图:

效果图:

五、程序中获取配置信息

- (void)viewDidLoad {

     [super viewDidLoad];

    //获取SettingsBundle信息

    NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];

     NSLog(@"%@",[userDefaults objectForKey:@"title_perference"]);

     NSLog(@"%@",[userDefaults objectForKey:@"sex_perference"]);

     NSLog(@"%@",[userDefaults objectForKey:@"name_preference"]);

     NSLog(@"%@",[userDefaults objectForKey:@"enabled_preference"]);

     NSLog(@"%@",[userDefaults objectForKey:@"slider_preference"]);

 }

注意点:

     如果运行应用后直接直接通过上面的代码获取信息,你会得到null;原因是:

root.plist实际上只是一个静态文件用来在设置里显示;只有当你对它进行修改,它才会往NSUserDefaults里添加。修改配置后,NSUserDefaults的优先级高于root.plist文件。

谢谢!!!

上一篇下一篇

猜你喜欢

热点阅读