iOS 导航栏 navigationItem.titleView = self.searchController.searchBar时 导航栏高度变高导致跳转时其他页面会有下移,返回也有移动的问题

方法一:

swift: 

searchBar.heightAnchor.constraint(equalToConstant: 44).isActive = true

oc:

[searchBar.heightAnchor constraintEqualToConstant:44].active = YES;

方法二:

在Stack Overflow上找到了答案

override func viewWillAppear(_ animated: Bool) {

        super.viewWillAppear(animated)

        navigationController?.view.setNeedsLayout() // force update layout

        navigationController?.view.layoutIfNeeded() // to fix height of the navigation bar

    }

    override func viewWillDisappear(_ animated: Bool) {

        super.viewWillDisappear(animated)

        navigationController?.view.setNeedsLayout() // force update layout

        navigationController?.view.layoutIfNeeded() // to fix height of the navigation bar

    }

方法二解决了我的问题

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1. 设置图片圆角 2. UIAlertController 声明并创建闭包,填充UIAlertAction的ha...
    俊瑶先森阅读 3,486评论 0 8
  • // 当XIB 中的文件加载完成会调用此方法 xib 存储在硬盘中。 当你没有使用的时候它是不会加载到内存的。当你...
    TenMios阅读 439评论 0 1
  • 一:Xib复用 1.Xib简介 File's Owner是控制对象,可以说是nib文件的所有者,控制管理可视化对象...
    谢谢生活阅读 3,349评论 1 10
  • 这是用Swift做项目遇到的问题记录,主要是供自己记录,如果有人碰巧搜索看到,有些你可能看不懂。不过这也没关系,因...
    志超mike阅读 4,108评论 0 7
  • 表情是什么,我认为表情就是表现出来的情绪。表情可以传达很多信息。高兴了当然就笑了,难过就哭了。两者是相互影响密不可...
    Persistenc_6aea阅读 125,969评论 2 7