美文网首页
iOS Settings.bundle 创建和使用(系统设置中展

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

作者: 石虎132 | 来源:发表于2018-05-28 14:46 被阅读0次

    //联系人: 石虎 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文件。

    谢谢!!!

    相关文章

      网友评论

          本文标题:iOS Settings.bundle 创建和使用(系统设置中展

          本文链接:https://www.haomeiwen.com/subject/ywlgjftx.html