不知道如何正确地使用故事板的子类UIApplication

我想在用户不活动的X时间之后返回到我的故事板的初始视图控制器(未触发事件触发)。 经过一番研究,我发现检测不活动的最常见的方法是触发一个NSTimer,并在发生事件时重置间隔。 为了检测触发的事件,我们重写UIApplication的子类中的[UIApplication sentEvent:]。 这是我被卡住的部分。

我正在看这个项目作为参考

http://www.icodeblog.com/2011/09/19/timing-out-an-application-due-to-inactivity/

https://github.com/elc/ELCUIApplication

我不确定如何在处理故事板时实现类似的function。 我尝试了类似于github projet的东西; 我创build了一个新的类,它是UIApplication的一个子类,覆盖了所需的方法,并最终在主函数中更改了目标类(从我的appdelegate到UIApplication的子类)。 通过这样做,我得到了以下错误

应用程序委托必须实现窗口属性,如果它想要使用主故事板文件。

github中的appDelegate是NSObject的一个子类,根据我的理解在他的window属性中手动加载初始视图,而我的appDelegate是UIResponder的子类,它本身是UIApplication的超类。 我不知道如何继续,我已经在我的AppDelegate窗口属性和综合,但我不知道该怎么办。

任何帮助将不胜感激!

这听起来像你改错了UIApplicationMain参数。

UIApplicationMain的默认调用如下所示:

 return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 

第三个参数(默认为nil )是要使用的UIApplication类的名称。 如果它是零,应用程序只使用UIApplication

第四个参数是要使用的UIApplicationDelegate类的名称。

这听起来像你改变了第四个参数,但你应该改变第三个参数:

 return UIApplicationMain(argc, argv, NSStringFromClass([MyApplication class]), NSStringFromClass([AppDelegate class]));