将数据传递给app delegate

时间:2013-08-15 08:25:39

标签: ios objective-c

我有一个包含TouchDrawView的课程NSMutableArray *completeLines;。 现在,当应用程序终止时,我想将此数组保存到文件中(我知道 如何进行保存,我已将其编写为类saveArray的{​​{1}}方法。

我的问题是,在TouchDrawView中,我想覆盖说appDelegate来调用applicationDidEnterBackground类对象上的saveArray方法,以将数组保存到我提到的文件。

你看到我的问题了吗?如何将TouchDrawView的实例传递给TouchDrawView,以便后者可以调用app delegate方法?如,

saveArray

PS。我到目前为止试图避免使用单例/静态数据,只是好奇如何以其他方式完成。

1 个答案:

答案 0 :(得分:1)

您可以通过让TouchDrawView观察UIApplicationDidEnterBackgroundNotification通知而无需连接到您的appDelegate。当应用程序进入后台时会触发。

您可能不希望在应用程序中使用不同的保存方法,但这取决于您的应用程序的构建方式。

示例:

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(saveMethod:)
                                             name:UIApplicationDidEnterBackgroundNotification
                                           object:nil];