单击 UISearchBar 的取消按钮后,如何使用 UISearchBar 刷新我的 UITableView?
Posted
技术标签:
【中文标题】单击 UISearchBar 的取消按钮后,如何使用 UISearchBar 刷新我的 UITableView?【英文标题】:How to refresh my UITableView with UISearchBar after click of cancel button of UISearchBar? 【发布时间】:2011-09-15 08:18:26 【问题描述】:我在表格视图顶部使用带有 UISearchBar 的 UITableView,对我来说,除了一个问题,如果我搜索一个字母,则 uitableview 中的搜索结果会被过滤,之后一切正常,如果我滚动搜索结果直到我的表格视图结束然后如果我按下我的 uisearchbar 的取消按钮表格视图正在刷新所有数据但它不是从第一个单元格显示,它从(大约第 25 个单元格)显示,就像我滚动了多少在我的搜索结果中,在单击取消后显示了很长的长度。我不知道我还调用重新加载数据是什么问题,我需要在开始加载时显示 tableview。
提前感谢任何帮助。谢谢。
【问题讨论】:
【参考方案1】:在处理取消按钮的- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
Delegate 方法中,您可以添加一些代码以像这样滚动回表格视图的顶部
- (void)searchBarCancelButtonClicked:(UISearchBar *)searchBar
// ... Code to refresh the Table View
// Reload the Table View
[self.tableView reloadData];
// Scroll to top
[self.tableView scrollToRowAtIndexPath:[NSIndexPath indexPathForRow:0 inSection:0] atScrollPosition:UITableViewScrollPositionTop animated:YES];
您可能需要使用滚动位置。而不是UITableViewScrollPositionTop
,您可能需要使用UITableViewScrollPositionMiddle
或UITableViewScrollPositionBottom
甚至UITableViewScrollPositionNone
【讨论】:
非常感谢 Suhail Patel,您的回答非常有帮助,我的问题得到了解决。【参考方案2】:在表格视图上调用以下方法:
[self.tableView reloadData];
然后它会刷新您的表格视图
【讨论】:
以上是关于单击 UISearchBar 的取消按钮后,如何使用 UISearchBar 刷新我的 UITableView?的主要内容,如果未能解决你的问题,请参考以下文章