加载视图的本地通知

时间:2014-04-30 15:46:39

标签: objective-c ios7 storyboard xcode5 localnotification

我有一个使用本地通知的应用,我想让应用在收到通知时加载不同的页面。我还希望它在使用通知解锁时滑动加载此新视图。

我的故事板没有导航控制器可以这样做吗?

1 个答案:

答案 0 :(得分:1)

您可以通过以下方式处理本地通知:

在AppDelegate中添加以下方法:

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions

此代码:

// Handle launching from a notification
UILocalNotification *locationNotification = [launchOptions objectForKey:UIApplicationLaunchOptionsLocalNotificationKey];
if (locationNotification) {
    // Set icon badge number to zero
    application.applicationIconBadgeNumber = 0;
    // redirect to UIViewController
    UIStoryboard * storyBoard = [UIStoryboard storyboardWithName:@"Storyboard" bundle:[NSBundle mainBundle]];
    UIViewController * notificationViewController = [storyBoard instantiateViewControllerWithIdentifier:@"IdentifierOfViewController"];
    self.window.rootViewController = notificationViewController; // set the new UIViewController
}

这使您可以在应用启动后立即处理LOCAL通知,方法是在“幻灯片”上查看'对话框或只是打开应用程序。 如果有通知,您可以在应用程序中更改rootViewController

  

我的故事板没有导航控制器这是可能的   可以吗?

是的,只要您使用模态导航,这不会成为问题。

修改

如果您想要处理通知,如果用户当前打开了该应用,您可以通过在AppDelegate中放置以下方法来捕获通知:

- (void)application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification