iOS之隐藏导航栏后返回手势失效解决办法

本文介绍了在iOS应用中,当隐藏导航栏后导致的返回手势失效问题的解决方法。通过在特定控制器的生命周期方法中设置导航栏代理,并实现相应协议,确保在隐藏导航栏的同时,仍能正常使用pop手势返回上一界面。
摘要由CSDN通过智能技术生成

在实际的项目中,遇到过个情况就是一个界面push到下个界面,但是下个界面需要隐藏掉导航栏。第二个界面的导航栏隐藏掉过后,iOS7之后的左划pop到上个界面的手势不能正常使用。下面就简单介绍下我的解决这个问题的思路。

  • 注:
  • V1是控制器1
  • V2是V1 push后的控制器2
  • V3是V1 push后的控制器3

1.隐藏导航栏

方法1:

隐藏导航栏有很多种做法, [self.navigationController setNavigationBarHidden:YES animated:animated]; 在V2的viewWillAppear中实现。 如若要展示导航栏: [self.navigationController setNavigationBarHidden:NO animated:animated]; 在V2的viewDidDisappear中实现。

方法2:

我们push后的界面是需要隐藏导航栏,但是导航栏依然是存在的。 我们在V2的viewDidLoad中实现导航栏的代理: self.navigationController.delegate = self;, 并在该控制器中遵守相应的UINavigationControllerDelegate协议。 下面就需要实现相关的协议:

#pragma mark - 导航栏的代理
- (void)navigationController:(UINavi
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值