0

我正在tableView以下列方式加载搜索结果,但我收到一条警告,抱怨指针类型不兼容。

我下面的代码有什么错误?

// Our tableView containing the search results.
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
    if (searchResults == nil) {
        return 0;
    } else {
        return [searchResults count];
    }
}
- (UITableView *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *CellIdentifier = @"SearchResultCell";

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
    if (cell == nil) {
        cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
    }

    cell.textLabel.text = [searchResults objectAtIndex:indexPath.row];
    return cell;
}
// END tableView

- (void)searchBarSearchButtonClicked:(UISearchBar *)searchBar
{
    NSLog(@"The search text is: '%@'", searchBar.text);
    searchResults = [NSMutableArray arrayWithCapacity:10];
    for (int i = 0; i < 3; i++) {
        [searchResults addObject:[NSString stringWithFormat:@"Fake Result %d for '%@'", i, searchBar.text]];
    }
    [self.tableView reloadData];
}
4

1 回答 1

2

的返回类型tableView:cellForRowAtIndexPath:不正确。它应该UITableViewCell *代替UITableView *.

于 2012-06-05T03:26:56.120 回答