从其他应用程序打开应用程序时出现NSNotification问题

时间:2015-04-27 10:21:46

标签: ios nsnotificationcenter

我已将文件类型与我的应用相关联,因此可以打开文本文件。

我的应用程序在后台时没有问题,我从另一个应用程序打开文本文件 - 文件被读取并显示。

但是,如果我的应用程序不在后台,并且第一次通过“打开”路径从另一个可以读取文本文件的应用程序加载。未收到通知 - 因此未读取文本文件。

我在阅读的文件中在app delegate中创建通知。

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject?) -> Bool

我的应用中的第一个视图控制器已在viewDidLoad中注册通知。

我认为原因很简单,App Delegate发布了通知 - 但我的第一个视图控制器中的接收器未注册,因此我的通知在矩阵中丢失。

那么,最好的办法是克服这个问题吗?也许延迟通知发送几秒钟?

仅供参考,这是good tutorial设置在您的应用中打开文件的基本过程

由于

1 个答案:

答案 0 :(得分:0)

为了简单起见,

我只是将呼叫延迟了一秒钟,以便让第一个视图控制器有时间自行注册

    let timer = NSTimer.scheduledTimerWithTimeInterval(1.0, target: self, selector: "postAfterDelay:", userInfo: nil, repeats: false)