美文网首页
【code_小马】Xcode12、iOS 14 popToRoo

【code_小马】Xcode12、iOS 14 popToRoo

作者: 曾经像素有点低 | 来源:发表于2021-04-09 17:07 被阅读0次

参考自:https://developer.apple.com/forums/thread/660750

环境:Xcode12.4 / 手机系统iOS14

三个控制器(UIViewController):

Controller_A
Controller_B
Controller_C

A->B->C

从A是根控制器,底部有tabbar 。B、C都没有tabbar

操作流程

A push B,B push C, 然后从C直接popToRootViewController到A

问题:

发现在iOS14上 A的Tabbar消失了

用其他老系统的测试机相同操作,A正常显示Tabbar;

解决方法:

方法一:
在使用popToRootViewController方法的地方加上
self.tabBarController.tabBar.hidden = NO;

self.tabBarController.tabBar.hidden = NO;
[self.navigationController popToRootViewControllerAnimated:YES];

方法二:
在自定义个NavigationController里重写如下方法

-(NSArray<__kindof UIViewController *> *)popToRootViewControllerAnimated:(BOOL)animated {
    if (self.viewControllers.count > 1) {
        self.topViewController.hidesBottomBarWhenPushed = NO;
    }
    
    NSArray<UIViewController *> *viewControllers = [super popToRootViewControllerAnimated:animated];
    // self.viewControllers has two items here on iOS14
    return viewControllers;
}

相关文章

网友评论

      本文标题:【code_小马】Xcode12、iOS 14 popToRoo

      本文链接:https://www.haomeiwen.com/subject/ecqwkltx.html