2
具体来说,在iOS 11(而不是以前的操作系统)中,当您点击搜索栏开始输入时,它会跳转到屏幕顶部。如何修复iOS 11搜索栏跳到屏幕顶部选择(斯威夫特)?
我可以解决这个问题时,搜索栏已接近屏幕的顶端通过使用此代码:
if #available(iOS 11, *) {
navigationItem.searchController = searchController
navigationItem.hidesSearchBarWhenScrolling = false
} else {
BugsTable.tableHeaderView = searchController.searchBar
}
但是,当我有一个看法中间的搜索栏(即其他一些元素在它上面),那个代码将不会工作,因为它告诉导航控制器内的搜索栏。我看到了下面的问题,但对于斯威夫特没有工作答案:
iOS 11 search bar jumping to top of screen
iOS 11 Searchcontroller jumps top of screen
我viewDidLoad中设置的参数是:
searchController.searchResultsUpdater = self
searchController.hidesNavigationBarDuringPresentation = false
searchController.dimsBackgroundDuringPresentation = false
searchController.searchBar.sizeToFit()
ResultsTable.tableHeaderView = searchController.searchBar
searchController.searchBar.barTintColor = MyGlobalVariable.themeMainColor
缺少什么我在这里?