IOS疯狂基础之NSUserDefaults

1.知识扫盲:什么是NSUserDefaults?
NSUserDefaults类用于保存应用程序设置和属性以及用户数据。例如,你可以存储用户在应用程序中使用的图片或默认颜色方案。这些对象存储在iOS所谓的“defaults系统”中。iOS的defaults系统在整个app中都是可用的,因此存放到defaults系统中的数据也是整个应用程序生命周期中可用的。也就是说,无论用户关闭程序还是关机,在用户再次打开程序或开机后这些数据仍然存在。NSUserDefaults可以存储的数据类型包括:

NSData NSString NSNumber NSDate NSArray NSDictionary

如果你想保存其他类型,如UIImage,你应该进行编码(即archive),或者将它转换为NSData、NSNumber或者NSString。


2.常规使用方法:

NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];

存常规数据:

[defaults setObject:firstName forKey:@"firstName"];

[defaults setInteger:age forKey:@"age"];

[defaults setBool:self.theSwitch.on forKey:kTheSwitch];

[SaveDefaults setObject:Array forKey:@"SaveKey"];  

取常规数据:

NSString *firstName = [defaults objectForKey:@"firstName"]; 

int age = [defaults integerForKey:@"age"];

bool b =[defaults boolForKey:kTheSwitch];

Array = [SaveDefaults objectForKey:@"SaveKey"];

存图像

UIImage *contactImage = contactImageView.image;

NSData *imageData = UIImageJPEGRepresentation(contactImage, 100);

[defaults setObject:imageData forKey:@"image"];

 取图像:

NSData *imageData = [defaults dataForKey:@"image"];

UIImage *contactImage = [UIImage imageWithData:imageData];


 [defaults synchronize];//同步

你可能感兴趣的:(NSUserDefaults)