我有一个表 View ,其标题显示 UISegmentedControl
和一个 UISearchBar
.请记住,我没有使用 UISearchController
.当我搜索了当前列表并切换了不同的段时,我想取消搜索并使用新数据重新加载列表。
目前我正在手动清除搜索文本、动画取消按钮和隐藏键盘。但我也在我的 searchBarCancelButtonClicked
中这样做方法。
仅使用 UISearchBar 时,有没有办法以编程方式取消搜索(清除文本、隐藏键盘和隐藏取消按钮)?
不,没有办法自动清除文本字段、隐藏键盘等。尽管它看起来很常见,但每个开发人员都可以决定如何实现它。 Apple 只提供了在用户点击取消按钮时捕捉事件的能力。
通常,我会在 View Controller 中创建一个本地函数,例如:
-(void)clearSearchBarUISearchBar *)searchBar {
searchBar.Text = @"";
[searchBar resignFirstResponder];
...
}
searchBarCancelButtonClicked:
(假设您已经为搜索栏创建了一个 IBOutlet),您可以这样做:-(void)searchBarCancelButtonClickedUISearchBar *)searchBar {
[self clearSearchBar:self.searchBar];
}
clearSearchBar:
您需要清除它的其他任何地方。searchBarCancelButtonClicked:
像这样:[self.searchBar.delegate searchBarCancelButtonClicked:self.searchBar];
关于ios - 仅使用 UISearchBar 时如何触发 "cancel search"?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31995119/
欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) | Powered by Discuz! X3.4 |