【问题标题】:Reloading UIViewController from scratch via AppDelegate applicationWillEnterForeground通过 AppDelegate applicationWillEnterForeground 从头开始​​重新加载 UIViewController
【发布时间】:2014-11-08 12:58:06
【问题描述】:

在我的 XCode 项目中,我正在寻找一个非常简单的解决方案: 当applicationWillEnterForeground 被调用时,我希望我的主(也是唯一的)viewcontroller 重新加载,就好像应用程序从头开始启动一样,原因是我希望它重新计算当时可能已经改变的一些事情,而应用程序在后台,以响应应用程序启动时检测到的时间变化。我希望这种情况发生,而不是视图只是以最后一次看到的状态重新出现

viewcontroller 被命名为 TMViewController

我找到的答案只是告诉我我必须在 AppDelegate 的 applicationWillEnterForeground 部分重新加载 viewcontroller,但不知道如何执行此操作

我找到了解释如何从网络重新加载各种元素、标签、网络视图和数据的答案。这些比我需要的要复杂得多,我真的看不到大海捞针

我需要做的只是 applicationWillEnterForeground 重新加载 viewcontroller 就好像它的 viewDidLoad 已被调用(我知道这本身不是一个好的解决方案,不是说我知道该怎么做!)

我想简而言之,我很难理解在 AppDelegateviewcontroller 文件的 h & m 文件中需要做什么来完成此操作

任何帮助将不胜感激

【问题讨论】:

    标签: ios objective-c xcode uiviewcontroller appdelegate


    【解决方案1】:
    self.window.rootViewController = [[TMViewController alloc]intWithNibName:@"myNib" bundle:nil];
    

    【讨论】:

    • 但我应该把它放在哪里?
    • in - (void)applicationWillEnterForeground:(UIApplication *)application - 根据您的问题,“我找到的答案简单地告诉我,我必须在 AppDelegate 的 applicationWillEnterForeground 部分重新加载视图控制器,但不是如何做到这一点”:)
    • 我试过了,但我得到了:!No visible@interface for 'TMViewController' 声明了选择器'intWithNibName:bundle:'
    • 我意识到我可能在其他地方遗漏了一些非常简单的东西,整个应用程序都是编写的,但我真的坚持这一点。
    猜你喜欢
    • 2011-06-22
    • 2011-06-12
    • 1970-01-01
    • 2011-08-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多