IOS UserDefaults

2015-12-10  本文已影响1572人  shanshan950224

UserDefaults默认值如何进行判断?

// 引导页
    if (![[NSUserDefaults standardUserDefaults] valueForKey:@"isFirst"]) {
        AppGuidViewController *appGuid = [[AppGuidViewController alloc] initWithImageArray:@[@"guies01",@"guies02",@"guies03"] startBtnDistanceWithBottomArray:@[@70,@100,@110,@120] needLoadVC:self.viewController];
        self.window.rootViewController = appGuid;
        [[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:@"isFirst"];
    }else{
        self.window.rootViewController = self.viewController;
    }

[[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:@"isFirst"];
这是在Userdefaults中放入了一对键值对,它是个永生字典,只要不remove,永远都存在这个应用程序中。

if (![[NSUserDefaults standardUserDefaults] valueForKey:@"isFirst"])
这句话代表,从userDefaults中取【isFirst】对应的value,如果取不到返回nil,nil取非(!),代表YES,代表着应用第一次启动,之后在userDefaults中放入[[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:@"isFirst"];

[button removeFromSuperview];
[writeButton removeFromSuperview];
[ll removeFromSuperview];
if ([[NSUserDefaults standardUserDefaults] objectForKey:@"isLogin"]) 
{
 [self loginBtn2];
}else{ 
[self loginBtn]; 
}

典故:

*NSUserDefaults支持的数据类型有:NSNumber(NSInteger、float、double),NSString,NSDate,NSArray,NSDictionary,BOOL等类型,当为字典时不能有null的value,如果把有null的value放入userDefaults,那么程序会崩。

总结:

上一篇 下一篇

猜你喜欢

热点阅读