Ios 接收推送通知时转到tabbarcontroller中的某个选项卡
我有以下Ios 接收推送通知时转到tabbarcontroller中的某个选项卡,ios,objective-c,storyboard,Ios,Objective C,Storyboard,我有以下情节提要 我现在想要的是,当我收到推送通知时,我应该转到tabbarController中的某个选项卡 我现在想知道实现这一点的最佳实践是什么? 我可以将self.window.rootController设置为正确的ViewController,但是当用户按下注销键时,我遇到了一个问题。当他按下注销按钮时,他应该被重定向到第一个ViewController。你在最左边看到的那个 有人能帮我吗 谢谢试试这个: - (void)application:(UIApplication *)
情节提要
我现在想要的是,当我收到推送通知时,我应该转到tabbarController
中的某个选项卡
我现在想知道实现这一点的最佳实践是什么?
我可以将self.window.rootController
设置为正确的ViewController
,但是当用户按下注销键时,我遇到了一个问题。当他按下注销按钮时,他应该被重定向到第一个ViewController。你在最左边看到的那个
有人能帮我吗
谢谢试试这个:
- (void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
{
if (self.window.rootViewController.presentedViewController != nil)
{
[self.window.rootViewController.presentedViewController dismissViewControllerAnimated:YES completion:^{
{
UIStoryboard *storyboard=[UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
tabbarcontroller=[storyboard instantiateViewControllerWithIdentifier:@"Tabbar"];
[tabbarcontroller setSelectedIndex:1];
[self.window.rootViewController presentViewController:tabbarcontroller animated:YES completion:nil];
}
UIStoryboard *storyboard=[UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
tabbarcontroller=[storyboard instantiateViewControllerWithIdentifier:@"Tabbar"];
[tabbarcontroller setSelectedIndex:1];
[self.window.rootViewController presentViewController:tabbarcontroller animated:YES completion:nil];
}];
UIStoryboard *storyboard=[UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]];
tabbarcontroller=[storyboard instantiateViewControllerWithIdentifier:@"Tabbar"];
[tabbarcontroller setSelectedIndex:1];
[self.window.rootViewController presentViewController:tabbarcontroller animated:YES completion:nil];
}
它将始终将您的根控制器切换到tabbarcontroller first viewcontroller,即使您的设备在运行时会收到通知。[tabbarcontroller setSelectedIndex:3];(根据选项卡栏更改编号)