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 に答える