美文网首页
iOS解决把searchController.searchBar

iOS解决把searchController.searchBar

作者: 码农淏 | 来源:发表于2017-04-27 14:46 被阅读235次

两年前没解决的bug终于解决了。。。。
刚出UISearchController的时候,我就遇到需求把searchController放在nav的titleView上。出现了view出现的时候会闪现灰色条的bug,当时赶时间就让产品妥协改到了别的地方
这次又有这需求。。就花心思解决了一下
出现的灰色view是UISearchBarBackground ,于是remove就好了
为什么是remove,而不是设置hidden呢,因为我发现,那个view消失后是真的消失了。并且设置hidden是没有用的。

for views in searchController.searchBar.subviews {
            printLog(views)
            for view in views.subviews {
                printLog(view)
                if view.isMember(of: NSClassFromString("UISearchBarBackground")!) {
                    view.removeFromSuperview()
                }
            }
        }

navigationItem.titleView = searchController.searchBar

相关文章

网友评论

      本文标题:iOS解决把searchController.searchBar

      本文链接:https://www.haomeiwen.com/subject/niagzttx.html