TableView Cells在搜索后未显示

时间:2014-06-04 22:35:10

标签: ios objective-c uitableview

搜索之后,我有一个包含新数据的数组。 我已通过打印调试确认了这一点

然后当它运行cellForRowAtIndexRow时,我的自定义单元格不会初始化。所以我添加了一个if语句来检查我的单元格是否为nil,以及它是否重新初始化它。但是,当返回单元格时,它不会在我的视图控制器上更新。

在我搜索后打印 cell.cellLabel.text 时,它是零。这很可能就是它没有更新的原因,即使我已经确认 direntry 中有数据

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

UIImage *myImage = [UIImage imageNamed:@"Demo"];


static NSString *CellIdentifier = @"peopleCell";
PeopleCell *cell = (PeopleCell *)[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil){
    cell = (PeopleCell *)[[PeopleCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];
}

DirEntryItem *direntry;
if(tableView == self.searchDisplayController.searchResultsTableView){
    direntry = [self.searchResults objectAtIndex:indexPath.row];
}else{
    direntry = [self.peopleArray objectAtIndex:indexPath.row];
}


cell.name = direntry.fullname;
cell.phoneNum = direntry.phoneNum;
cell.email = direntry.email;
cell.admin = direntry.admin;
cell.cellLabel.text = direntry.fullname;

[cell.profile setImage:myImage];

return cell;
}

0 个答案:

没有答案