zoukankan      html  css  js  c++  java
  • 关于iOS导航控制器隐藏和显示会出现返回键失效,导航栏标题动画异常

    最近做的demo  bug出现了,我觉得这个bug出现得很经典所以贴出来给大家看看,

    bug演示就是:点击返回键失效出现如下gif图演示的内容

    为啥会出现如此奇葩的bug,系统的返回键居然失效了,尴尬症又犯了,愣是点了很久也不知所措

    bug出现的源头:从不隐藏导航栏进行手势返回的时候,手势返回一半松手,回到不隐藏导航栏的页面,在push其他页面,就会出现返回键失效的问题

    出现bug的重要步骤:手势返回一半又松手

    进行页面隐藏导航栏的代码如下

        //显示导航栏
        [self.navigationController setNavigationBarHidden:NO animated:NO];
        //隐藏导航栏
        [self.navigationController setNavigationBarHidden:YES animated:NO];

    个人认为出现该bug的原因就是手势返回的时候  导航栏的页面是有动画效果的(可以拿其他app试试),页面的标题和按钮都会渐变

    而隐藏导航栏和显示导航栏的代码设置的animated是NO,所以手势返回就会冲突,而使整个导航控制器页面和返回键出现问题呢

    解决的办法很简单,只要将NO设置为YES就好

        //显示导航栏
        [self.navigationController setNavigationBarHidden:NO animated:YES];
        //隐藏导航栏
        [self.navigationController setNavigationBarHidden:YES animated:YES];

    完美解决该bug,不会再来~~

  • 相关阅读:
    ACE反应器(Reactor)模式(3)
    ACE反应器(Reactor)模式(2)
    ACE反应器(Reactor)模式(1)
    ACE主动对象模式(2)
    ACE主动对象模式(1)
    ACE中UDP通信
    ACE中TCP通信
    从golang-gin-realworld-example-app项目学写httpapi (六)
    从golang-gin-realworld-example-app项目学写httpapi (五)
    从golang-gin-realworld-example-app项目学写httpapi (四)
  • 原文地址:https://www.cnblogs.com/coderYu/p/5859710.html
Copyright © 2011-2022 走看看