iOS 11中新增了属性
self.navigationItem.searchController = self.searchController;
自带了系统搜索的效果特别好用,但是使用的过程中踩了不少坑。
会出现如图的情况,隐藏了之后又自动弹出来。
1.self.navigationController.navigationBar.translucent = NO;
注释掉这一行
如果还不行
那就是约束的原因了,这个界面的tableview不能写在安全区域内.
if (@available(iOS 11.0, *)) {
make.edges.equalTo(self.view.mas_safeAreaLayoutGuide);
}
2.点击UISearchController后 tableview往下偏移了
这是由于跟系统的self.edgesForExtendedLayout = UIRectEdgeNone;
配合不当造成的,所以需要修改成默认值self.edgesForExtendedLayout = UIRectEdgeAll;
以及self.definesPresentationContext = YES;