从子视图返回根视图,然后切换tabBar问题

先说一下我项目的架构: 由于设计的一个需求,我自定义了tabBar(就是写个view,view上放置按钮,按钮上放置icon和title,设置好选中和非选中状态,最后KVC方式替换掉系统的tabBar),然后tabBar对应4个导航控制器,导航控制器对应普通的VC。

后来遇到一个问题,在第三个tabBar的子视图中,有个按钮,需要切换到首页,结果点击按钮确实切换到了首页

[[NSNotificationCenter defaultCenter] postNotificationName:kCodeMethodChangeTabBarNotification object:@0];

但是当我点tabBar第三个item时,页面还是之前的界面,然后我在子视图的按钮事件中加了popToRootViewControllerAnimated

[self.navigationController popToRootViewControllerAnimated:NO];
[[NSNotificationCenter defaultCenter] postNotificationName:kCodeMethodChangeTabBarNotification object:@0];

结果点击按钮切换到首页时,底部tabBar消失了,开始我以为是我自定义tabBar产生的问题,我又注掉自定义tabBar,换成系统tabBar,结果问题依然存在,这时候意识到不是这个问题。

不写popToRoot,能返回且tabBar不消失,写了能返回但消失了。因为有多个地方有如此需求,无意间点到其中一个,既能返回且底部tabBar不消失,看了下代码,只是将两句代码位置变换了。

[[NSNotificationCenter defaultCenter] postNotificationName:kCodeMethodChangeTabBarNotification object:@3];
[self.navigationController popToRootViewControllerAnimated:NO];

不明白这是什么情况,大概搜索了下,看到这个文章,既然这样,暂时这样了

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1、通过CocoaPods安装项目名称项目信息 AFNetworking网络请求组件 FMDB本地数据库组件 SD...
    阳明AI阅读 16,054评论 3 119
  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,668评论 4 61
  • 微信近期推出了一项新功能——筛选不常联系的好友。使用这个功能,我发现有将近一半的好友已经有半年的时候没有联系过了。...
    宋予屿阅读 5,405评论 0 2
  • 友找工作,找我帮忙推荐,荐之,却未被录用。内心惶惶然,自责之余,心想,若自己是董事长就好了,录用一友便是举手之劳。...
    我的优雅红姐姐阅读 3,633评论 5 3
  • 1.妈妈说同学淘宝都要收钱,照理来说应该送才是,这些小细节也能看出一个人的品质。 2.老公说你同学合作时一点也不让...
    以心为师阅读 3,226评论 0 0

友情链接更多精彩内容