0

我将searchController'ssearchBar放入navigationItem如下titleView

self.navigationItem.titleView = self.searchController.searchBar;

虽然它在未选中时非常适合(取消项目未显示),但如果它成为第一响应者并且取消项目出现在旁边,它会稍微searchBar滑到下方。navigationItem你可以看到下面的结果:

searchBar 在 navigationItem 中的位置

我怎样才能解决这个问题?有解决方法吗?

4

2 回答 2

0

您应该使用self.navigationItem.searchController而不是self.navigationItem.titleView.

self.navigationItem.searchController = self.searchController;

在此处了解更多信息https://developer.apple.com/documentation/uikit/uinavigationitem/2897305-searchcontroller

于 2017-11-01T07:15:53.297 回答
-1

使用下面的代码

if #available(iOS 11.0, *) {
     navigationItem.searchController = searchController
} else {
     // Fallback on earlier versions
     navigationItem.titleView = searchController?.searchBar
}
于 2017-11-01T07:28:47.627 回答