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



                            

你可能感兴趣的:(Data)