不知道如何从iOS上的app delegate访问视图对象

时间:2013-08-06 15:11:19

标签: ios uiviewcontroller delegates uiapplicationdelegate

我是iOS编程的初学者,所以我可能会问一些明显的问题。无论如何,我的故事板中的UISwitch正确连接到我mySwitch中声明的名为UIViewController的属性。我想知道如何从我的app委托中访问该属性。例如,从applicationWillResignActive:

内部
- (void)applicationWillResignActive:(UIApplication *)application
{
    ??? // don't know how to access the mySwitch property
    if ([mySwitch isOn]) {
        // perform some task
    }
}

我正在寻找的答案可能会满足更一般的问题“从我的应用代表访问视图对象的正确方法是什么?”我没有找到答案。任何帮助都非常感谢。

1 个答案:

答案 0 :(得分:0)

您不应该尝试 - 这不是应用代理的目的。或者,根据任务的不同,交换机的状态应存储到用户默认值或类似的内容。

如果视图控制器应该执行该任务,则可以通过观察UIApplicationWillResignActiveNotification通知(如果确实需要这样做)来执行此操作。

如果应用程序委托应该完成这项工作,那么只要交换机发生变化,视图控制器就应该更新NSUserDefaults中的值。