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;
    }
   return YES;
  • 判断应用是否是第一次启动
  • [[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:@"isFirst"];
  • 这是在UserDefaults中放了一对键值对,只要你不remove,它将永远存在。
  • 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;
    这句话代表从UserDefaults中取(isfirst)对应的key/ value,如果没取到,那就返回(nil)nil取非(!)代表yes,那么就代表应用是第一次启动。之后在if中放[[NSUserDefaults standardUserDefaults] setValue:@"YES" forKey:@"isFirst"];
  • 则程序下次再启动的时候(isfirst)从UserDefaults取(isfirst)的value就为字符串@"yes",然后取(!),代表no,就会走else的内容。
  • 典故:
    userDefaults中的value可以为字典 但字典中不能含有null的value,如果把含有null的value放入userDefaults那么程序会崩。
  • 判断用户是否为登录状态
[button removeFromSuperview];
 [writeButton removeFromSuperview];
 [ll removeFromSuperview];
    if ([[NSUserDefaults standardUserDefaults] objectForKey:@"isLogin"]) {
        // 登陆后的页面效果
        [self loginBtn2];
}else{
        [self loginBtn];
           }
  • 如果登录走[self loginBtn2]; else(没有登录)则[self loginBtn];
  • UserDefaults可以存放个人信息,用户名密码,是否第一次登录,是否第一次启动等。

推荐阅读更多精彩内容

  • 判断应用是否是第一次登录 [NSUserDefaults standardUserDefaults] valueF...
    小布丁儿阅读 51评论 0 0
  • 判断用户是否第一次登录 判断应用是否是第一次启动 [[NSUserDefaults standardUserDef...
    徐大拿阅读 97评论 0 0
  • UserDefaults默认值如何进行判断? 判断应用是否第一次运用 判断应用是否是第一次启动 [[NSUserD...
    shanshan950224阅读 2,052评论 1 0
  • iOS 開発の結構 画面 UI UIWebview [[UIApplication sharedApplicati...
    RencaiXiong阅读 111评论 0 0
  • 1.badgeVaule气泡提示 2.git终端命令方法> pwd查看全部 >cd>ls >之后桌面找到文件夹内容...
    i得深刻方得S阅读 3,324评论 0 8