UISearchBar push时闪烁bug解决与灰色背景去除

当我们push时 searchbar 会闪烁出现(就延迟了出现)

解决方法:

    override func viewDidLoad() {
        navigationController?.navigationBarHidden = true//去除UISeachbar 的白边闪烁bug(在super前调用)
        super.viewDidLoad()
    }
    override func viewWillAppear(animated: Bool) {
        navigationController?.navigationBarHidden = false
        super.viewWillAppear(animated)
        searchBar.becomeFirstResponder()
    }

灰色背景去除

解决方法:

    fileprivate lazy var searchBar: UISearchBar = {
        let searchBar = UISearchBar()
        searchBar.placeholder = "搜索感兴趣的人和问题"
        // 去除灰色背景
        for view in searchBar.subviews {
            if view.subviews.count > 0 {
                view.subviews.first?.removeFromSuperview()
                break
            }
        }
        return searchBar
    }()  

最后调用:navigationItem.titleView = searchBar

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

推荐阅读更多精彩内容