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];(根据选项卡栏更改编号)