执行搜索后更新节标题值

时间:2012-05-06 19:53:47

标签: ios

我有一个实现UISearchBarDelegate的UITableView。我在self.searchDisplayController.searchResultsTableView中有两个部分,并希望使用返回的结果数更新这些部分中的UILabel。这样做的最佳方式是什么?

我正在使用CoreData。

THX

1 个答案:

答案 0 :(得分:0)

您需要在UITableView数据源方法- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section中处理适当的价值获取。然后,一旦获得新值(并填充您将在该方法中使用的任何来源),只需致电[myTableView reloadData]

因此,假设您将标题标题存储在名为HeaderTitles的数组中。 (这假设你已经有一个NSMutableArray / NSArray已经填充了你的章节标题

// This is a method I made up, which is where you get the data returned...
- (void)gotNewTitle:(NSString *)title forSection:(NSUInteger)section {
    [[self HeaderTitles] replaceObjectAtIndex:section withObject:title];
    [[self myTableView] reloadData];
}

- (NSString *)tableView:(UITableView *)tableView titleForHeaderInSection:(NSInteger)section {
    return [[self HeaderTitles] objectAtIndex:section];
}

如果您不想使用NSArray,因为您确实有2个部分,您可以使用以下方法(假设有2个属性,NSStringFirstSectionTitle和{{ 1}}):

SecondSectionTitle