ios – 切换标签栏,然后导航到另一个视图控制器

ios – 切换标签栏,然后导航到另一个视图控制器,第1张

概述我正在制作一个iOS应用程序,我有Tab栏Side Menu. 标签栏有5个项目,侧面菜单有大约12个菜单. 全方位菜单功能来自Tab 1&侧面菜单可以在标签栏中的所有视图中访问. 这意味着如果我在标签2,即使我可以访问侧面菜单.当我点击标签1中的侧面菜单项时,我将转到标签1,然后导航. 我想做的是让我们说如果我从侧面菜单点击投诉菜单,我想去投诉视图控制器. 我使用的代码如下. // go to 我正在制作一个iOS应用程序,我有tab栏SIDe Menu.

标签栏有5个项目,侧面菜单有大约12个菜单.

全方位菜单功能来自Tab 1&侧面菜单可以在标签栏中的所有视图中访问.

这意味着如果我在标签2,即使我可以访问侧面菜单.当我点击标签1中的侧面菜单项时,我将转到标签1,然后导航.

我想做的是让我们说如果我从侧面菜单点击投诉菜单,我想去投诉视图控制器.

我使用的代码如下.

// go to first tabself.tabbarController.selectedindex = 0;// Now navigateComplainsVIEwController *sVIEwCon = [self.storyboard instantiateVIEwControllerWithIDentifIEr:@"Complains"];CATransition *Transition = [CATransition animation];Transition.duration = 0.5;Transition.type = kCATransitionFade;[self.navigationController.vIEw.layer addAnimation:Transition forKey:kCATransition];[self.navigationController pushVIEwController:sVIEwCon animated:NO];

我有两个场景

情景1(正确)

我在标签1上,点击侧边菜单中的抱怨.当我点击时,我使用上面的代码成功地使用了ComplainsVIEwController.

情景2(正确)

我在标签2上,点击侧边菜单中的抱怨.当我点击,我成功地到Tab 1,但我不导航到ComplainsVIEwController.当我点击回到标签2,我看到投诉控件在标签2中打开.

任何想法如何首先切换到Tab然后导航到另一个vIEwcontroller?

编辑1

以下是我的基本结构.

解决方法 看起来你在切换标签后忘记切换导航控制器.
尝试实现UITabbarControllerDelegate方法:
- (voID)tabbarController:(UITabbarController * _Nonnull)tabbarController dIDSelectVIEwController:(UIVIEwController * _Nonnull)vIEwController {    self.currentNavigationController = (UINavigationController *)vIEwController;}

然后当您手动切换标签时使用以下代码:

// go to first tabself.tabbarController.selectedindex = 0;// Manually call delegate method[self tabbarController:self.tabbarController dIDSelectVIEwController:self.tabbarController.selectedVIEwController];// Now navigateComplainsVIEwController *sVIEwCon = [self.storyboard instantiateVIEwControllerWithIDentifIEr:@"Complains"];CATransition *Transition = [CATransition animation];Transition.duration = 0.5;Transition.type = kCATransitionFade;[self.currentNavigationController.vIEw.layer addAnimation:Transition forKey:kCATransition];[self.currentNavigationController pushVIEwController:sVIEwCon animated:NO];

为了实现这一目标,您需要创建新的属性来保持currentNavigationController.

总结

以上是内存溢出为你收集整理的ios – 切换标签栏,然后导航到另一个视图控制器全部内容,希望文章能够帮你解决ios – 切换标签栏,然后导航到另一个视图控制器所遇到的程序开发问题。

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

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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存