iOS-程序设置

作者: 改变自己_now | 来源:发表于2016-01-10 21:16 被阅读172次

    在iOS中“设置”与“配置”是有区别的,不过这个两个概念也没有明显的区别。但设置是在苹果的设置中进行设置,比如图中的就是设置就只能在软件外进行设置。


    BC7F363796D3761FBBB7AF4153CA0F13.png

    不过图上的都是系统的一些设置,那么如何自定义我们自己的设置呢?

    首先弄明白SettingsBundle的概念:它是一个包文件,其中包含设置界面中所需的设置项目的描述、用到得图片、文字的本地化和子设置界面设置项目的描述等内容。
    1、废话不多说,首先新建一个工程,名字的可以随便取。我取名为程序设置-Demo

    2、新建一个SettingsBundle,如下图


    QQ20160110-0.png

    3、运行一下工程,等运行完后按下command+shift+h回到模拟器主界面中选择settings,点击进去查看中多了"程序设置-Demo",点击进去查看会有系统默认的设置

    ![ ![QQ20160110-7.png](https://img.haomeiwen.com/i970305/4bf558a5ccd0bc97.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)](https://img.haomeiwen.com/i970305/582df508570039b8.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

    4、现在我们来添加一下自定义的设置选项,例如:账号设置->账号->密码
    首先,打开SettingsBundle中找到Root.plist,在里面添加

    ![QQ20160110-3.png](https://img.haomeiwen.com/i970305/a0571751f4ddcdbd.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)

    里面的字段我就不一一解释啦(我太懒了),运行一下程序看下,重复步骤3,就能看到我们自己定义的设置了。

    QQ20160110-9.png

    我们也可以定义滑块和开关,知识我们添加类型不一样而已,下面图中就是可供选择的类型

    屏幕快照 2016-01-10 下午8.51.28.png

    Group ---提供一个组就像tableView中的分组。
    MultiValue -- 提供多种选择,比如选择不同的城市。
    Slider -- 滑动条
    TextField -- 文本输入框
    Title --标题
    Toggle Switch -- 开关

    5、在这里就不一一的举例了,还有另外一个Type为Child Pane可以设置一子设置界面,不过需要另外新建一个plist文件。我们添加一个通知的设置选项,点击可以跳转到另外一个界面设置。

    QQ20160110-10.png

    新建一个名为notification.plist文件,注意:这个文件名必须与Filename对应的字段一样。而且改文件必须放在Settings.bundle中。
    我们就添加一个很简单声音开关设置,默认为NO如图:

    QQ20160110-11.png

    我们再次运行程序,来步骤3中的操作,效果如下:

    settings.gif

    最后就是如何获取这设置的值了,其实很简单,就是大家常用的NSUserDefaultes这个类,其中key就是我们添加对应的key值就可以了。

    就这么多了,谢谢!

    相关文章

      网友评论

        本文标题:iOS-程序设置

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