tvOS:无论如何都要阻止搜索键盘在滚动时崩溃?

时间:2016-08-16 16:28:22

标签: swift tvos uisearchcontroller apple-tv uisearchbardelegate

所以我有一个标准设置,用于在我的tvOS应用程序中设置搜索视图。

let storyboard = UIStoryboard(name: "Main", bundle: nil)
guard let resultsController = storyboard.instantiateViewControllerWithIdentifier(SearchResultsViewController.storyboardIdentifier) as! SearchResultsViewController

let searchController = UISearchController(searchResultsController: resultsController)
searchController.searchResultsUpdater = resultsController
searchController.hidesNavigationBarDuringPresentation = false
searchController.searchBar.placeholder = NSLocalizedString("Enter keyword (e.g. iceland)", comment: "")

let searchContainer = CustomUISearchContainerViewController(searchController: searchController)

当推入导航堆栈时,这是一个视图,搜索栏位于顶部,结果如下所示

enter image description here

因此,每当结果很大并且我必须滚动键盘时,每当我向上滚动并向上滑过最顶端的结果时,键盘会再次折叠并再次展开。有什么方法可以防止这种行为吗?我只是希望它一直保持开放状态。我想的可能是UISearchController的子类,但我不确定那里甚至可以替换

1 个答案:

答案 0 :(得分:0)

我不确定这是否是正确的答案,但是如果您这样做,搜索栏将不会折叠。我用水平滚动设置了一个UICollectionView,但是我从来没有遇到过这个问题。可能需要以不同的方式布置视图,并且如果您有数百个结果,这可能不是最佳解决方案,但是它将避免搜索栏及其“键盘”消失。