我的 UISearchDisplayController 页面 View 如下(原始状态)
单击搜索栏并输入一些搜索词后,我会在表格中得到一个结果列表
点击表格中的一个条目后,一个新的viewController显示在栈顶
我的意图是在单击取消按钮(左上角)时, Root View 将显示 searchDisplay Controller 的原始状态
这是我试过的
在我的取消方法中(当我点击左上角的取消按钮时触发)
- (void)cancel
{
[self dismissViewControllerAnimated:YES completion:NULL];
[self searchBarCancelButtonClicked:self.searchDisplayController.searchBar];
}
在搜索栏委托(delegate)方法中我这样做了
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar {
self.searchBar.showsCancelButton = NO;
[self.searchBar resignFirstResponder];
self.searchBar.text = @"";
searchDisplayController.searchResultsTableView.hidden = YES;
[self searchDisplayControllerWillEndSearch:self.searchDisplayController];
}
点击取消按钮后我设法实现的是这个
原来的tableview好像不见了(点击页面才出现)
如何修改我的方法以将搜索恢复到其原始状态?
最佳答案
试试 [searchDisplayController setActive:NO animated:NO]
这应该隐藏搜索表。
关于objective-c - 如何以编程方式将 seachDisplay Controller View 重置为原始状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13985942/