UISearchDisplayController取消按钮没有刷新标题和索引

时间:2011-02-11 20:22:25

标签: iphone uisearchbar uisearchdisplaycontroller cancel-button

我有一个表视图,有很长的字符串列表。每个部分都有标题,右侧有一个索引,还有一个搜索按钮。 这是使用UISearchDisplayController以编程方式实现的(即不在IB中)。

当搜索按钮被激活时,我隐藏标题(在titleForHeaderInSection中),并隐藏索引(在sectionIndexTitlesForTableView中),请求
if ([self.searchDisplayController isActive])

问题是,当单击取消按钮时,标题和索引首先保持隐藏状态。我尝试(在searchBarCancelButtonClicked中)致电[self.tableView reloadData],但这不起作用。

我的[self.tableView reloadData]中有一个viewWillAppear,这有一个方面的帮助:如果我选择一行,将另一个视图推送到堆栈,然后返回到此表,标题和索引是否有所需。

我可能做错了什么?

1 个答案:

答案 0 :(得分:0)

我发现有时,当[tableView reloadData]不起作用时,这样做会:

[tableView performSelector:@selector(reloadData) withObject:nil afterDelay:0];

无论出于何种原因,有时表视图会进入这样一种状态:它必须等到下一次迭代通过运行循环才能重新加载。