在iOS中,常量声明一般使用2种方式
1、使用C语言的预处理方式
#define APP_NAME @“demo”
#define kURL @“http://www.google.com”
2、使用extern cnst c关键字,extern 表示该变量已经声明过,只是一个引用,cnst表示该变量是一个常量,不可修改。
extern NSString * const kURL;
NSString * const kURL = @"http://marshal.easymorse.com";
NSUserDefaults
NSUserDefaults类用于保存应用程序设置和属性以及用户数据。例如,你可以存储用户在应用程序中使用的图片或默认颜色方案。这些对象存储在iOS所谓的“defaults系统”中。iOS的defaults系统在整个app中都是可用的,因此存放到defaults系统中的数据也是整个应用程序生命周期中可用的。也就是说,无论用户关闭程序还是关机,在用户再次打开程序或开机后这些数据仍然存在。NSUserDefaults可以存储的数据类型包括:
NSData
NSString
NSNumber
NSDate
NSArray
NSDictionary
如果你想保存其他类型,如UIImage,你应该进行编码(即archive),或者将它转换为NSData、NSNumber或者NSString。
查看NSUserDefaults,说到底该对象就是一个dictionary的数据结构。
NSDictionary* defaults = [[NSUserDefaults standardUserDefaults] dictionaryRepresentation];
NSLog(@"Defaults: %@", defaults);
查看NSUserDefaults中某一项的值:
NSArray *array = [[NSUserDefaults standardUserDefaults] objectForKey:@"AppleKeyboards"];
NSLog(@"Keyboards: %@", array);
往NSUserDefaults中设置一个值:
[[NSUserDefaults standardUserDefaults] setObject:@"test-value2" forKey:@"test-key"];
重复给一个Key赋值,后面的会覆盖前面的。
把缓存中的数据同步到后台,程序崩溃时,未同步到后台的数据会丢失。
[[NSUserDefaults standardUserDefaults] synchronize];
最后,NSUserDefaults是单例的,同时也是线程安全的。
分享到:
相关推荐
IOS应用源码——NSUserdefaults(读取和写入自定义对象).zip
iOS之数据持久化-NSUserDefaults,在进入后台模式时候,将进行数据保存!
IOS应用源码——NSUserdefaults(读取和写入自定义对象).rar
IOS中NSUserDefaults保存账号密码:将账号、密码保存到NSUserDefaults
使用系统的NSUserDefaults进行存取值实在是难以对其进行统一管理,为此NSUserDefaultsModel就很好的解决了这一难题,并且还支持Cocoapods。 github地址:https://github.com/liuchongfaye/NSUserDefaultsModel ...
沙盒 和 数据持久化存储 Core Data 和 NSUserDefaults 案例
前两年IOS应用源码-主要是用于毕业设计学习的。
主要介绍了IOS 中NSUserDefaults读取和写入自定义对象的实现方法的相关资料,希望通过本文大家能够理解掌握这部分内容,需要的朋友可以参考下
用NSUserDefaults存储数据做的一个登陆界面,当用户名和密码对的时候就移除登陆界面
iOS数据持久化之属性列表和归档,NSUserDefaults,Plist,NSKeyedArchiver
自己写的一个NSUserDefaults 关于字符串,数值的快速存取。
object-c基础语法NSUserDefaults, 适合初学者,主要学习NSUserDefaults的设置,NSUserDefaults读取值,读取所有用户偏好设置,怎样持久化设置用户设置等
Swift 用户首选项 NSUserDefaults
PAPreferences, 使用 @dynamic 访问 NSUserDefaults PAPreferences使用NSUserDefaults存储用户首选项的简便...PAPreferences将 dynamic 属性映射到 NSUserDefaults getter和 setter,以便访问默认值,就像它们是对象上
iOS中有五种持久化数据的方式:属性列表、对象归档、NSUserDefaults、SQLite3和Core Data NSUserDefaults官方文档介绍: NSUserDefaults类为和默认系统类交互提供了一种编程接口。默认系统允许应用程序去定制其行为...
LUKeychainAccess, 与NSUserDefaults类似的iOS钥匙串服务的包装器 LUKeychainAccess 与 NSUserDefaults 类似的iOS钥匙串服务的包装器。用法将下列文件导入项目中,然后使用 #import 文件。LUKeychainAccess....
直接上代码 #import @interface NSUserDefaultUtil : NSObject +(void)PutDefaults:(NSString *)key Value:(id)value; +(id)GetDefaults:(NSString *)key; @end ...#import NSUserDefaultUtil.h ...