USearchController 隐藏的 UIView
Posted
技术标签:
【中文标题】USearchController 隐藏的 UIView【英文标题】:UIView hidden by USearchController 【发布时间】:2020-02-01 16:21:27 【问题描述】:我在大标题样式中使用 UISearchController。但是当我推送到下一个视图控制器并再次回到同一个控制器时,我的 UIView 会被导航栏隐藏。
观看视频 https://drive.google.com/open?id=1tb5Eeni-79uomBGl1GPEcESDSYOfrZ7v
【问题讨论】:
我遇到了同样的问题,你解决了吗? 【参考方案1】:我无法重现您的错误,但我会发布我的测试代码,因为它可以帮助您。
我建议您在 BaseViewController: UIViewController 中编写此代码并在您的 ViewControllers 中扩展它以定义大标题:
self.navigationController?.navigationBar.prefersLargeTitles = true
定义您的 UISearchController 并设置您的 Instance。
var resultSearchController: UISearchController!
resultSearchController = UISearchController(searchResultsController: nil)
resultSearchController.searchResultsUpdater = self
tableView.tableHeaderView = resultSearchController.searchBar
最后,您可以尝试在屏幕消失时关闭搜索键盘,如下所示:
override func viewDidDisappear(_ animated: Bool)
super.viewDidDisappear(animated)
resultSearchController.searchBar.endEditing(true)
希望这会有所帮助。
【讨论】:
【参考方案2】:在 viewwillappear 中添加以下行可以解决我的问题
extendedLayoutIncludesOpaqueBars = true
【讨论】:
以上是关于USearchController 隐藏的 UIView的主要内容,如果未能解决你的问题,请参考以下文章
Material-UI v3:如何使用 TouchRipple 组件?
酶不模拟 React Material-UI v1 上的更改事件 - 选择组件