最近偶遇一个问题,当使用UISearchController来push一个新的界面时,push成功后搜索框依然存在,不知道是不是苹果的一个bug,但是可以通过增加一句代码来解决:
1 | self.definesPresentationContext = YES; |
definesPresentationContext这是一个布尔变量,表示该视图被覆盖时,视图或者它的子类提供了一个视图控制器。默认为NO,我们在做跳转时,需要一个跳转的环境,如果呈现的视图控制器不提供的话,需要呈现这个控制器的父视图控制器。此处因为UISearchController为呈现的视图控制器,它不提供这个跳转的环境,所以需要它的父视图控制器提供,所以设置父视图控制器的这个布尔变量为YES。