导航栏侧滑返回的一些坑

作者: _RG | 来源:发表于2020-02-20 10:49 被阅读0次

在iOS中,一个模块一般是共用一套导航栏,
而在侧滑返回时,导航栏是固定不动的,只有控制器的页面会跟随手势移动而移动, 因此开发中会出现一些坑

场景1:
首页控制器(假设为Home控制器)导航栏隐藏,进入下一个控制器(假设为B )时显示
此时,从B侧滑返回Home时会有问题

如果Home的隐藏写在viewWillAppearviewWillDisappear里面, 那从B返回Home时,会先触发HomeviewWillAppear方法,侧滑还在B页面时,导航栏就会隐藏

- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    self.navigationController.navigationBarHidden = YES;
    NSLog(@"%s",__func__);
}

- (void)viewWillDisappear:(BOOL)animated {
    [super viewWillDisappear:animated];
    self.navigationController.navigationBarHidden = NO;
    NSLog(@"%s",__func__);
}

从图中可以看到,侧滑时导航栏会提前隐藏

translucent=NO

translucent=NO.gif

translucent=YES

test11102.gif

解决方式: https://github.com/iOSRG/RGNavigationController

喜欢的给个star吧

相关文章

  • iOS 解决自定义导航栏不能侧滑返回

    iOS中,导航栏默认是可以侧滑,但是自定义导航之后,侧滑返回失效。 解决办法:在自定义导航栏中增加侧滑手势判断,代...

  • 导航栏侧滑返回的一些坑

    在iOS中,一个模块一般是共用一套导航栏,而在侧滑返回时,导航栏是固定不动的,只有控制器的页面会跟随手势移动而移动...

  • 导航栏隐藏侧滑返回

    导航侧滑返回手势共同消失 self.navigationController.navigationBarHidde...

  • iOS导航栏使用总结

    目录: 一、设置导航栏样式二、自定义导航栏返回按钮后侧滑不可用问题三、隐藏导航栏底部的分割线四、导航栏引起的布局问...

  • SwiftUI导航栏隐藏以及侧滑返回问题

    1.导航栏隐藏 当我们设置这个的时候,导航栏将会被隐藏,但同时侧滑返回也会失效,这时候我们可以添加导航扩展 2.侧...

  • iOS 隐藏导航栏

    在需要隐藏导航栏的控制器中加入如下代码。 但是这样隐藏导航栏会出现一个问题:在侧滑返回的时候,导航栏会出现,视觉上...

  • 解决自定义导航栏返回按钮后侧滑不可用问题

    iOS导航栏自带的返回按钮形式单一,所以大多情况下,我们都需要自定义导航栏返回按钮。但是此时我们却发现页面的侧滑返...

  • iOS添加全屏侧滑返回功能遇到的问题

    给项目中添加全屏侧滑返回功能。当右滑返回时遇到导航栏闪动消失的问题,查了很多资料,最后发现是前后两个页面状态栏样式...

  • iOS 关于navBar的相关设置

    自定义导航栏的返回按键之后, 系统的侧滑返回会失效, 可以直接设置所有的 在viewDidLoad里写 end ~...

  • swift 导航栏左滑返回

    取消系统自带导航栏左滑返回功能: 导航栏的属性:self.interactivePopGestureRecogni...

网友评论

    本文标题:导航栏侧滑返回的一些坑

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