iOS 隐藏导航栏和有导航栏页面跳转

大部分首页或者搜索页面都会隐藏导航栏

隐藏导航栏页面 --> 有导航栏页面

但是,不知道大家有没有发现

隐藏导航栏页面 -> 有导航栏页面,如果是侧滑返回上一个页面(隐藏导航栏页面)

顶部的导航栏会黑或者各种不正常的现象。

总结了一套思路可以解决这个问题:


class ViewController: BaseViewController {
    
    // 判断显示隐藏导航栏是否需要动画
    var needAnimation: Bool = false

    override func viewDidLoad() {
        super.viewDidLoad()

    }
    
    override func viewWillAppear(_ animated: Bool) {
        super.viewWillAppear(animated)
        // 下面两种方法其实有点区别的,有空可以琢磨一下
        if needAnimation {
            // 隐藏导航栏有动画
            self.navigationController?.setNavigationBarHidden(true, animated: true)
        } else {
            // 隐藏导航栏没有动画
            self.navigationController?.isNavigationBarHidden = true
        }
    }
    
    override func viewDidAppear(_ animated: Bool) {
        super.viewDidAppear(animated)
        // 设置回初始值
        needAnimation = false
    }
    
    override func viewWillDisappear(_ animated: Bool) {
        super.viewWillDisappear(animated)
        // 显示导航栏
        self.navigationController?.setNavigationBarHidden(false, animated: true)
    }
    
    
    // 跳转到下一个页面
    func viewToSecond() {
        // 下一个页面返回当前页面,隐藏导航栏需要动画
        needAnimation = true
        let secondVC = self.storyboard?.instantiateViewController(withIdentifier: "SecondVC") as! SecondViewController
        self.navigationController?.pushViewController(secondVC, animated: true)
    }

}




有什么问题可以留言,最近在搞iOS,大家互相学习。


好好学习,天天向上。<( ̄oo, ̄)/


Potato_zero.jpg
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 180,895评论 25赞 708
  • 我爱光 爱那血色 我想扑向野火 燃烧自己 冷风裹挟着暴雨袭来 它们怒吼着 嘲笑着 我的心已被火点燃 我不再彷徨犹豫...
    冰清玉洁2017阅读 493评论 0赞 0
  • 笔记本很久没用了,今天打开很是缓慢,于是开了360卫士,发现系统中有许多“垃圾文件”,正是这些“垃圾”使得电脑的速...
    云在波心阅读 1,261评论 0赞 1
  • 突然感叹,虽然现在天天祈祷他们健康长大,天天为他们神经紧张,很辛苦的感觉!可突然想到再等几年想像现在这样抱抱亲亲他...
    JessieFeng冯小洁阅读 359评论 0赞 0
  • 大学------小时候的我们认为那是神圣的,是一个可以摆脱父母叨扰,可以拥有“人身自由”,不用认真学习,可以天天玩...
    破影阅读 1,250评论 1赞 0

友情链接更多精彩内容