ios – 接收推送通知时打开特定标签栏

ios – 接收推送通知时打开特定标签栏,第1张

概述如何在收到推送通知时打开特定标签栏? 我已经把[self.tabBarController setSelectedIndex:2];放在viewDidAppear上,在数据记录中发生了什么,它显示它通过tabBar 2 viewController但它没有打开/显示那个页面并保留在firstView控制器/第一个tabBar. 然后在我终止应用程序并打开后,自动/突然打开tabBar 2 view 如何在收到推送通知时打开特定标签栏?

我已经把[self.tabbarController setSelectedindex:2];放在vIEwDIDAppear上,在数据记录中发生了什么,它显示它通过tabbar 2 vIEwController但它没有打开/显示那个页面并保留在firstVIEw控制器/第一个tabbar.

然后在我终止应用程序并打开后,自动/突然打开tabbar 2 vIEwController.

谁能提出任何想法或示例代码来解决这个问题?

这是在我的dIDReceiveRemoteNotification中;

- (voID)application:(UIApplication *)application dIDReceiveRemoteNotification:(NSDictionary *)userInfo {    NSLog(@"Remote notification received");    if([userInfo valueForKey:@"app"]) {        Nsstring *action_app = [userInfo valueForKey:@"app"];        NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];        [defaults setobject:action_app forKey:@"app"];        NewVC *sample=[[NewVC alloc]init];        [sample vIEwDIDLoad];        //[self.tabbarController setSelectedindex:2];        [self clearNotifications];    }else{        NSLog(@"---nothing to read---");    }}

NewVC位于tabbar 2.

解决方法 您必须更改tabbar selectedindex,如,

- (voID)application:(UIApplication *)application  dIDReceiveRemoteNotification:(NSDictionary *)userInfo{    if([userInfo valueForKey:@"app"]) {      Nsstring *action_app = [userInfo valueForKey:@"app"];      NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];     [defaults setobject:action_app forKey:@"app"];   UITabbarController *tabb = (UITabbarController *)self.window.rootVIEwController;   tabb.selectedindex = 2; }}
总结

以上是内存溢出为你收集整理的ios – 接收推送通知时打开特定标签栏全部内容,希望文章能够帮你解决ios – 接收推送通知时打开特定标签栏所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1007047.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-22
下一篇 2022-05-22

发表评论

登录后才能评论

评论列表(0条)

保存