【问题标题】:How do i check my viewcontroller is displaying now or not?我如何检查我的视图控制器现在是否显示?
【发布时间】:2013-05-17 05:07:34
【问题描述】:

我想将我的viewcontroller 状态写入plist(类似于我的viewcontroller 当前显示的内容,或者我从那里移到另一个视图),这样当我检查我的plist 时,我可以看到在给定时间我正在使用viewcontroller(例如:下午2点我使用viewcontroller1和下午2.05我使用viewcontroller2)。我如何做到这一点?

【问题讨论】:

    标签: ios objective-c view uiviewcontroller


    【解决方案1】:

    每次访问 plist 都不好,因为它会消耗时间并且会影响应用程序的性能。所以将日志保存在字典中(使用单例模式在视图控制器之间共享字典)

    在每个视图控制器的viewWillAppear中使用如下

    [viewControllerStatus setObject:NSStringFromClass([self class]) forKey:[NSDate date]]; 
    

    最后将这个字典写入plist中applicationDidEnterBackground:applicationWillTerminate:

    【讨论】:

      【解决方案2】:

      ViewController1

      -(void)viewDidAppear:(BOOL)animated {
          // code to save start time in plist for viewcontroller 1
      }
      

      当它从一个视图切换时,你可以从中获取它

      -(void)viewDidDisappear:(BOOL)animated{
          // code to save end time in plist for viewcontroller 1
      }
      

      ViewController2

      -(void)viewDidAppear:(BOOL)animated {
          // code to save start time in plist for viewcontroller 2
      }
      

      当它从一个视图切换时,你可以从中获取它

      -(void)viewDidDisappear:(BOOL)animated{
          // code to save end time in plist for viewcontroller 2
      }
      

      【讨论】:

        【解决方案3】:

        使用viewWillAppear方法登录PLIST文件。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2023-03-11
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2019-08-16
          • 1970-01-01
          相关资源
          最近更新 更多