`
473687880
  • 浏览: 482360 次
文章分类
社区版块
存档分类
最新评论

IOS 轻量级数据持久化 DataLite

 
阅读更多

开发的过程中我们经常要保存一些配置信息,一般简单的是用NSUserDefaults

[[NSUserDefaults standardUserDefaults] objectForKey:key];
[[NSUserDefaults standardUserDefaults] setObject:aObject forKey:key];
[[NSUserDefaults standardUserDefaults] removeObjectForKey:key];

我将这些进行了一些简单的封装,使得用起来更加方便:

// 在.h文件中声明一个变量
XY_DataLite_string(DataLiteTitle)

// 在.m文件实现一个变量
DEF_DataLite_object_autoSynchronize(DataLiteTitle)

使用的时候如下:

    self.DataLiteTitle = nil;
    NSLogD(@"%@", self.DataLiteTitle);
    self.DataLiteTitle = @"test1";
    NSLogD(@"%@", self.DataLiteTitle);

---------------------------------------------------------------------------------------

#define XY_DataLite_string( __name ) \
-(void) set##__name:(NSString *)aObject; \
-(id) __name;

// 注意: __name 首字母需要大写
#define DEF_DataLite_object_autoSynchronize( __name ) \
-(void) set##__name:(id)aObject{ \
    [DataLite writeObject:aObject forKey:NSStringify( __name ) synchronize:YES]; \
} \
-(id) __name{ \
    return  [DataLite readObjectForKey:NSStringify( __name )]; \
}

具体细节请看:

https://github.com/uxyheaven/XYQuickDevelop



  


  
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics