PNDUserDefaultsController 1.0.0

PNDUserDefaultsController 1.0.0

测试已测试
语言语言 Obj-CObjective C
许可证 MIT
发布最后发布2014年12月

Alexsander Akers 维护。



  • 作者:
  • Alexsander Akers

PNDUserDefaultsController 是一个与 KVO 兼容的控制器类。这个类的共享实例的属性可以绑定到用户界面元素,以便访问和修改在 NSUserDefaults 中存储的值。

PNDUserDefaultsController 是一个适用于 iOS 4.3 及以上版本的手机软件。

安装

PNDUserDefaultsController 可以通过 CocoaPods 添加到项目中。

用法

  1. PNDUserDefaultsController.m 子类化
  2. 为每个需要建模的用户默认值添加属性。
  3. 通过重写 +propertiesForUserDefaultsKeys 将属性绑定到用户默认值。

示例

XYUserDefaultsController.h

//
//  XYUserDefaultsController.h
//
//  Created by Pandamonia LLC on 2/15/13.
//  Copyright (c) 2013 Pandamonia LLC. All rights reserved.
//

#import "PNDUserDefaultsController.h"

extern NSString *const XYUserAcceptedTermsOfServiceKey;
extern NSString *const XYUsernameKey;

@interface XYUserDefaultsController : PNDUserDefaultsController

@property (nonatomic) BOOL acceptedTermsOfService;
@property (nonatomic) NSString *username;

@end

XYUserDefaultsController.m

//
//  XYUserDefaultsController.m
//
//  Created by Pandamonia LLC on 2/15/13.
//  Copyright (c) 2013 Pandamonia LLC. All rights reserved.
//

#import "XYUserDefaultsController.h"

NSString *const XYUserAcceptedTermsOfServiceKey = @"XYAcceptedTermsOfService";
NSString *const XYUsernameKey = @"XYUsername";

@implementation XYUserDefaultsController

/*

Depending on your version of Xcode, you may need to  include the following variable synthesis:

@synthesize acceptedTermsOfService = _acceptedTermsOfService;
@synthesize username = _username

*/

+ (NSDictionary *)propertiesForUserDefaultsKeys
{
    static NSDictionary *propertiesForUserDefaultsKeys;
    static dispatch_once_t onceToken;
    dispatch_once(&onceToken, ^{
        propertiesForUserDefaultsKeys = @{
            @"acceptedTermsOfService": XYUserAcceptedTermsOfServiceKey,
            @"username": XYUsernameKey
        };
    });

    return propertiesForUserDefaultsKeys;
}

@end

许可证

PNDUserDefaultsController 由 Pandamonia LLC 创建和维护,采用 MIT 许可证。*该项目本身对所有项目都是免费的。*您可以在任何公共或私人项目中使用 PNDUserDefaultsController,无需注明出处——尽管我们喜欢注明出处!这对我们很有帮助。

不确定您的权利?阅读更多。