现在我有一个动态单元格来显示列表。并使用搜索栏和搜索显示控制器。为什么它在模拟器上显示为空白。
在过滤之前,模拟器会显示所有单元格,并且披露可以链接到另一个表格视图。过滤后,它应显示一些单元格。但它是空白的。并且该披露也没有得到解决。
细胞代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
static NSString *CellIdentifier = @"MovieCell";
MovieCell *cell = (MovieCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
Movie *movie = nil;
if (cell == nil) {
cell = [[MovieCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}
if (tableView == self.searchDisplayController.searchResultsTableView) {
movie= [filteredMovieArray objectAtIndex:[indexPath row]];
} else {
movieArray = self.movies;
movie = [movieArray objectAtIndex:[indexPath row]];
}
cell.nameLabel.text = movie.movieName;
cell.placeLabel.text = movie.place;
cell.categoryLabel.text = movie.category;
cell.isFavLabel.text = movie.isFavourite ? @"Favourite" : @"Not Favourite";
[cell.starRating setRating:movie.rating];
[cell setAccessoryType:UITableViewCellAccessoryDisclosureIndicator];
NSLog(@"description = %@",[cell description]);
return cell;
}
答案 0 :(得分:0)
我做到了。我认为这是一个很好的答案:Search Bar in UITableView doesn't display text in Cell label。
除此之外,我还添加了此代码部分以适应单元格高度:
- (void)searchDisplayController:(UISearchDisplayController *)controller didLoadSearchResultsTableView:(UITableView *)tableView {
tableView.rowHeight = 87;
}
这个数字是我单元格的行高。