NSUserDefaults

来源:互联网 发布:附近淘宝店 编辑:程序博客网 时间:2024/06/02 21:19

用户首选项是用来保存和记录用户在操作应用的过程做做出的一些选择或设置。可以存储一些数据,但基本都是简单类型的数据,主要作用都是存储一些用户设置数据。

NSUserDefaults类提供了非常方便的方法来获取常用的类型,例如 floats,doubles,intergers,Booleans,URLs。所以一个NSUserDefaults的对象必须是属性表,这也就是说 我们可以存储NSData,NSString,NSNUmber,NSDate,NSArray,NSDictionary这些实例。如果你想存储其他类 型的对象,你要将其归档并创建一个NSData来实现存储。

从NSUserDefaults返回的值是不可改变的,即便是你在存储的时候使用的是可变的值。例如你使用mutable string做为“MyStringDefault”的值,当你做使用stringForKey:方法获取的值,这个值仍然是不可变的。

NSUserDefaults是单例,同时也是线程安全的。

NSUserDefaults的几个重要方法:
standardUserDefaults:创建共享默认设置对象的类方法(Java中的静态方法,单例)
objectForKey:返回键对象的实例方法
setObject: forKey:以指定的键设置值的实例方法

基本用法:
- (void)viewDidLoad
{
[superviewDidLoad];
NSUserDefaults *myDefaults = [NSUserDefaultsstandardUserDefaults];
[myDefaultssetObject:@”Hello”forKey:@”defaultKey”];

NSLog(@”The value is %@”,[myDefaultsobjectForKey:@”defaultKey”]);
}

NSUserDefaults有一个基本特点就是,数据是保存在程序全局中的,所以当退出程序后下次再进来时,数据还是存在的,这样就起到了保存用户操作数据的功能。

0 0
原创粉丝点击