iOS 11中UISearchController的一些坑

2018-01-11  本文已影响81人  makemake

iOS 11中新增了属性
self.navigationItem.searchController = self.searchController;
自带了系统搜索的效果特别好用,但是使用的过程中踩了不少坑。
会出现如图的情况,隐藏了之后又自动弹出来。

QQ20180111-105139.gif

1.self.navigationController.navigationBar.translucent = NO; 注释掉这一行
如果还不行
那就是约束的原因了,这个界面的tableview不能写在安全区域内.

      if (@available(iOS 11.0, *)) {
            make.edges.equalTo(self.view.mas_safeAreaLayoutGuide);
        }

2.点击UISearchController后 tableview往下偏移了

1533637002584.jpg

这是由于跟系统的self.edgesForExtendedLayout = UIRectEdgeNone;配合不当造成的,所以需要修改成默认值self.edgesForExtendedLayout = UIRectEdgeAll;以及self.definesPresentationContext = YES;

上一篇下一篇

猜你喜欢

热点阅读