NSUserDefaults的使用

 NSUserDefaults的使用

在android中,我们常用perfrence来存储一些例如配置性的东西,其实就是一个 kv 表,那么在ios 中,我们可以用NSUserDefault来存储这些东西,今天项目中使用到了,简单记录一下吧:
记录:

NSUserDefaults *userDef =[NSUserDefaults standardUserDefaults];

       if(!userDef) {

           [userDefsetObject:result forKey:@"user"];

           [userDefsynchronize];

}

取值:

NSUserDefaults *userDef =[NSUserDefaults standardUserDefaults];

    if (!userDef) {

       NSDictionary*user = [userDef objectForKey:@"user"];

 

}

注意的是:在NSUserDefault中,不能保存自定义对象,只可保存如NSArray,NSDictionary,NSInterger,NSString等数据,我们需要像在java中一样序列化,在oc中序列化是NSCoding协议.

要点: NSUserDefaults非常好用,并不需要用户在程序中设置NSUserDefaults的全局变量,需要在哪里使用NSUserDefaults的数据,那么就在哪里创建一个NSUserDefaults对象,然后进行读或者写操作。


针对同一个关键字对应的对象或者数据,可以对它进行重写,重写之后关键字就对应新的对象或者数据,旧的对象或者数据会被自动清理。


删除:

[[NSUserDefaults standardUserDefaults] removeObjectForKey:key];

[[NSUserDefaults standardUserDefaultssynchronize];


你可能感兴趣的:(NSUserDefaults的使用)