本文主要是介绍用NSUserDefaults保存和读取程序设置,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
NSUserDefaults:用来保存应用程序设置和属性、用户保存的数据。用户再次打开程序或开机后这些数据仍然存在。NSUserDefaults可以存储的数据类型包括:NSData、NSString、NSNumber、NSDate、NSArray、NSDictionary。如果要存储其他类型,则需要转换为前面的类型,才能用NSUserDefaults存储。
保存数据:
- -(void)saveSetting {
- NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults];
- //save string
- NSString* saveString = @"simon";
- [defaults setObject:saveString forKey:@"name"];
- //save integer
- NSInteger saveInt = 100;
- [defaults setInteger: saveInt forKey:@"count"];
- //save bool
- BOOL saveBool = YES;
- [defaults setBool: saveBool forKey:@"flag"];
- //save image
- UIImage *image=[[UIImage alloc]initWithContentsOfFile:@"photo.jpg"];
- NSData *imageData = UIImageJPEGRepresentation(image, 100);//UIImage对象转换成NSData
- [defaults setObject:imageData forKey:@"image"];
- //用synchronize方法把数据持久化到standardUserDefaults数据库
- [defaults synchronize];
- }
读取数据:
- -(void)getSetting {
- NSUserDefaults *defaults =[NSUserDefaults standardUserDefaults];
- //根据键值取出name
- NSString *name = [defaults objectForKey:@"name"];
- NSInteger count = [defaults objectForKey:@"count"];
- BOOL bflag = [defaults objectForKey:@"flag"];
- NSData *imageData = [defaults dataForKey:@"image"];
- UIImage *Image = [UIImage imageWithData:imageData];//NSData转换为UIImage
这篇关于用NSUserDefaults保存和读取程序设置的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!