• IOS之应用程序设置


    8.1 应用程序设置概念

    8.2 创建设置束

    8.3 设置项目种类

    8.4 读取设置

    8.1 应用程序设置概念

    应用程序设置(Application Settings):在iOS和Mac OS很多软件中都有使用偏好(preferences),例如,在iOS中我们设置WiFi、运用商和壁纸等等。

    wps_clip_image-22225

    8.2 创建设置束

    创建工程

    wps_clip_image-10824

    Settings Bundle(设置束)

    一个应用程序的使用偏好,是存储在一个Root.list的XML文件中的,在这个文件中是与Settings Bundle关联起来的。可以在Root.list中指定设置项目的类型,可以有常规字段类型、划块、开关和子视图类型等等。

    创建一个设置束

    wps_clip_image-2213

    wps_clip_image-31479

    上图中在Resource文件夹下添加设置束文件Settings.bundle(默认名称)。展开Settings.bundle文件夹:

    Root.plist图标 是设置属性的属性列表

    en.lproj文件夹 是本地化应用程序时使用的

    Root.plist的PreferenceSpecifiers节点

    wps_clip_image-29875

    wps_clip_image-27285wps_clip_image-8222

    8.3 设置项目种类

    生成的设置束文件设置项目

    从上面的运行的应用程序看,我们没有编写任何一行代码系统就已经帮我们创建好一些设置项目了。

    wps_clip_image-14500

    PSGroupSpecifier

    设置项目Type为PSGroupSpecifier用于指示该项目是一个新分组的开始,其后的每个项目都将是此分组的一部分,直到一个Type值为PSGroupSpecifier的项目之前。

    在本例子中我们还要设置Title为Group,有多个Group时候Title不能重复。

    PSTextFieldSpecifier

    设置项目Type为PSTextFieldSpecifier是指示该项目是一个特定的使用偏好字段类型。其它项目的说明:

    wps_clip_image-1955

    PSToggleSwitchSpecifier

    设置项目Type为PSToggleSwitchSpecifier是指示该项目是一个特定的使用偏好开关类型。其它项目的说明:

    wps_clip_image-17703

    PSSliderSpecifier

    设置项目Type为PSSliderSpecifier是指示该项目是一个特定的使用偏好滑块类型。其它项目的说明

    wps_clip_image-28803

    为滑块添加最大最小值图片

    wps_clip_image-22627

    Show Package Contents来访问束的内容。这将打开一个新的窗口。将图标文件复制到此文件夹中。这样束就能找到这两个图标文件了。

    添加最大最小值图片文件结构

    wps_clip_image-25049

    具体往束里设置图片:

    wps_clip_image-17762

    运行结果

    wps_clip_image-4470

    添加子设置视图

    wps_clip_image-9692

    添加完子视图,运行程序:

    wps_clip_image-10421

    8.4 读取设置

    读取应用程序中设置

    我们使用NSUserDefaults类读取用户设置,通常使用

    NSUserDefaults* defaults = [NSUserDefaults standardUserDefaults];

    NSUserDefaults获得值方法有:

    arrayForKey:  boolForKey:  dataForKey:

    dictionaryForKey:  floatForKey:  integerForKey:

    objectForKey: stringArrayForKey:  stringForKey:

    wps_clip_image-8763

    MainViewController.h

    wps_clip_image-10475

    MainViewController.m

    wps_clip_image-22228

    FlipsideViewController.h

    wps_clip_image-21572

    FlipsideViewController.m

    wps_clip_image-20077

    wps_clip_image-22775

    运行

    wps_clip_image-7421

    注:
    1 本教程是基于关东升老师的教程
    2 基于黑苹果10.6.8和xcode4.2
    3 本人初学,有什么不对的望指教
    4 教程会随着本人学习,持续更新
    5 教程是本人从word笔记中拷贝出来了,所以格式请见谅

  • 相关阅读:
    Windows删除git本地记住的密码
    C++ fmt库的安装和测试
    仿照struct is_integral 实现struct not_int
    folly库net库udp小例子
    Java阻塞队列BlockingQueue
    正则表达式必知必会摘要
    正则表达式匹配IP地址
    SimpleDateFormat线程安全性测试与解决方案
    Java8 HashMap中哈希桶(table)数组的索引位置
    socket网络编程--基础应用篇
  • 原文地址:https://www.cnblogs.com/syxchina/p/2689787.html
Copyright © 2020-2023  润新知