开发者社区> 问答> 正文

检测用户是否点开View

我用NSUserDefault检测应用首次被打开:

BOOL didRunBefore = [[NSUserDefaults standardUserDefaults] boolForKey:@"didRunBefore"];

     if (!didRunBefore) {
      //Your Launch Code
      [[NSUserDefaults standardUserDefaults] setBool:YES forKey:@"didRunBefore"];
      [[NSUserDefaults standardUserDefaults] synchronize];

       }

问题是,我需要给每个view添加一个Alert,用来说明其中包括的属性,只要在应用首次点开的时候出现就行。

展开
收起
爵霸 2016-03-26 08:28:48 1698 0
1 条回答
写回答
取消 提交回答
  • 作为一个面向对象程序员可以用一个比较普遍的方法:

    + (BOOL)checkWhetherRunBefore:(NSString *)key
    {
        return [[NSUserDefaults standardUserDefaults] boolForKey:key];
    } 
    
    + (void)hasRunForMyClass:(NSString *)key
    {
        [[NSUserDefaults standardUserDefaults] setBool:YES forKey:key];
        [[NSUserDefaults standardUserDefaults] synchronize];
    }

    然后在ViewController中, 添加下面的代码在viewWillAppear或者viewDidAppear中:

    - (void)viewWillAppear
    {
        if(![HelpController checkWhetherRunBefore:NSStringFromClass([self class])])
        {
            //do your thing
            [HelpController hasRunForMyClass:NSStringFromClass([self class])]
        }
    
    }
    2019-07-17 19:15:05
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载