从AppDelegate导航到ViewController?

时间:2013-01-18 15:38:32

标签: iphone ios objective-c ios6 appdelegate

当我在application:didReceiveLocalNotification:收到通知后,我将用户带到某个视图控制器*时,是否有首选方法?

例如,如果我有视图控制器A,B,C和D,则会收到通知,应用程序在后台运行,用户位于屏幕A,B或C ,我需要将它们带到屏幕D,并在完成后返回到之前的屏幕。

一种方法似乎是制作D的A,B,C代表,用故事板中的segue连接它们,并执行performSegueWithIdentifier:在application:didReceiveLocalNotification:中,但如果我有ex,那就不能很好地扩展。 60个屏幕。

是否有更好/最好的方法从AppDelegate推送屏幕上的视图控制器并返回到用户之前完成的任何位置?

* 请注意,如果用户当前位于应用内部,则不会发生这种情况,以免造成中断。

1 个答案:

答案 0 :(得分:0)

通常情况下,使用模态视图控制器可以实现这种行为。

但是我不会从appDelegate弹出一个模态视图控制器,而是创建同一个类的A,B和C子类。这个类将有代码来处理通知,方法是显示一个模态视图控制器(带有D),当被解除时,它会向视图控制器显示通知到达时的位置。

虽然我不明白你的最后一句话。如果用户在应用程序内部时不会发生这种情况,为什么还要让他回到上一个屏幕呢?