答案 0 :(得分:0)
如果您使用过UISearchController
,请将viewWillDisappear:
放在viewController中。
//this is my searchController, created programatically
var searchController : UISearchController?;
override func viewWillDisappear(animated: Bool) {
super.viewWillDisappear(animated);
if let sc = self.searchController where sc.active {
self.searchController?.dismissViewControllerAnimated(false, completion: nil);
}
}
原因:
UISearchController
是UIViewController
的子类。
如果您的搜索栏为active
,则表示它位于您当前的viewController上。因此,在从viewController出来之前,您需要使用其属性active
来检查它是否为.active
。