我有一个使用本地通知的应用,我想让应用在收到通知时加载不同的页面。我还希望它在使用通知解锁时滑动加载此新视图。
我的故事板没有导航控制器可以这样做吗?
答案 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