美文网首页iOS-SDK开发
iOS 模态(presentVC)之后,执行push的问题

iOS 模态(presentVC)之后,执行push的问题

作者: 京北磊哥 | 来源:发表于2022-07-27 10:06 被阅读0次

    从一个控制器A模态到另一个控制器B,再从Bpush到另一个控制器C,但是按照通常的方法,模态到B之后,就push不到C了,这个是因为B控制器不是导航控制器的根控制器或子控制器。只有当前控制器在导航控制器栈中才可以使用push到导航其它视图,所你必须把B加入到导航控制器中,才能用来push 其他视图。

    在A的控制器里模态到B
    (如果需要设置模态全屏显示的话 需要 设置 navVc)

    UINavigationController* navVc = [[UINavigationController alloc] initWithRootViewController:A]; 
    navVc.modalPresentationStyle = UIModalPresentationOverCurrentContext|UIModalPresentationFullScreen;
    [self presentViewController: navVc animated:YES completion:nil];
    

    再从B控制器push 到C控制器

    [self.navigationController pushViewController:C animated:YES];
    

    需要注意的是. 在C的页面 继续push D的话, C 和D都是在模态层上, 可以通过dismiss 整个关闭 模态层

    相关文章

      网友评论

        本文标题:iOS 模态(presentVC)之后,执行push的问题

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