【问题标题】:Custom UITableViewController for UISearchController overlays the search bar in iOS 11UISearchController 的自定义 UITableViewController 覆盖 iOS 11 中的搜索栏
【发布时间】:2018-03-31 11:46:36
【问题描述】:

当您将搜索控制器设置为 navigationItem.searchController 时,UISearchController 的自定义 UITableViewController 会覆盖 iOS 11 中的搜索栏。表格视图控制器覆盖整个屏幕,因此您在键入时看不到搜索栏。当您向 UISearchController 发送 nil 时,这不是问题。基本上,我有一个用于此地图应用程序的搜索栏,因此我将 UITableViewController 设置为 UISearchController 以在搜索位置时处理搜索结果的显示。以前,表格视图显示在搜索栏的底部,现在它覆盖了整个屏幕。

这是一个代码sn-p:

    searchController = UISearchController(searchResultsController: searchResultsController)
    searchController.searchBar.sizeToFit()
    searchController.hidesNavigationBarDuringPresentation = true
    searchController.dimsBackgroundDuringPresentation = true
    searchController.definesPresentationContext = false
    searchController.searchResultsUpdater = self
    searchController.delegate = self

    if #available(iOS 11.0, *){
        self.navigationItem.searchController = searchController
    }

【问题讨论】:

    标签: ios uisearchbar ios11 uinavigationitem uisearchcontroller


    【解决方案1】:

    发现问题。需要在 willPresentSearchController 中设置正确的 origin 值

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2015-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-11-16
      • 2019-12-16
      • 1970-01-01
      相关资源
      最近更新 更多