NSUserDefaults是轻量级的本地存储,属于归档的一个特例,我们知道归档需要建立文件,并将数据写到文件中(键iOS 数据的本地存储-对象归档),而NSUserDefaults其实是系统帮我们建立好了文件和读写接口,我们只需要调用接口将数据写入就行!注意:虽然说NSUserDefaults也是写到每个app的沙盒之中的,但是最好不要讲账号和密码写到其中,毕竟在越狱的手机,这样做事不安全的,一般用于存放app的用户设置之类的东西,如果需要账号密码之类的话,建议使用苹果提供的keychain。
1、 NSUserDefaults的使用:
NSUserDefaults的使用非常的简单,比如保存密码和账号:
NSString *soundLevel = @"3";
NSUserDefaults *userDefault = [NSUserDefault standaryUserDefaults];
[userDefault setObject:soundLevel forKey:@"sLevel"];
获取数据也一样的简单,只需要根据key就能获取相应保存的值了:
NSUserDefaults *userDefault = [NSUserDefault standaryUserDefaults];
NSString *mySoundLevel = [userDefault objectForKey:@"sLevel"];
那怎么改变已经存放好的值呢?只能对该key在赋值一次,所以注意保存key的唯一性,避免被覆盖。
2、关于NSUserDefaults可以直接存储的类型,也就是:
API [userDefault setObject:soundLevel forKey:@"sLevel"] 的第一个参数的值:
NSNumber(NSInteger、float、double),NSString,NSDate,NSArray,NSDictionary,BOOL.