iOS隐藏导航栏尽量用set方法,不要用点。。。会出BUG。。。

隐藏导航栏有两种方法

[self.navigationController setNavigationBarHidden:YES animated:YES];

self.navigationController.navigationBarHidden = YES;

不难看出,两种方法的区别就在于有没有动画,第一种方法加了animated=YES,就不会出现特殊情况的BUG。

建议大家尽量用第一种方法


我今天就遇到了这个特殊情况

一共有①②③三个页面,①push②,②push③。
正常左上角返回没有问题。
当加上边缘滑动返回时,③pop②,②pop①。
如果三个页面都显示导航栏也没有问题。

我这里①是隐藏导航栏的,②③是显示导航栏的。这样就会出BUG了。
当从②左侧边缘往右滑动时,如果只是稍微动一下,而没有返回到①
(就是露出一点①页面之后,赶紧往往左滑,确保还停留在②页面)
这时就出问题了,②页面的导航栏没了,③的也没了。

这时只要返回到①页面重新进入就行了。如果说这个BUG影响不大。
但是还是存在一个更严重的BUG,这个着实令我着急啊。
当出现上面这个BUG后,重新从①进入②,没问题。
接着从②进入③,③的title就变成了②的title,③左上角的返回按钮也不管用了,导航栏出现严重的错乱。


(这第一个BUG是因为我把②页面中显示导航栏的代码写在了ViewDidLoad里面了,应该写在ViewWillAppear里面)

【第二个BUG就是真正的难题了,就是这篇博客要说的,找了半天,后来发现加上动画就OK了。】

(上面这段文字是复制的我今天在CSDN问答里面提问的话,下面是我问题的链接,大家可以看看网友对这个问题的回答)

http://ask.csdn.net/questions/248158

  • 6
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值