-1

我在表格视图中使用出队机制时遇到了麻烦,所以我决定一次加载所有单元格。好吧,我有一个带有标签的自定义单元格。发生的情况是所有单元格都已加载,但标签上没有信息。这是我的代码。

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

{

NSString *CellIdentifier = @"MyCell";

MyCell *cell = [[MyCell alloc] initWithStyle:UITableViewCellStyleDefault  reuseIdentifier:CellIdentifier];

Prototipo *prototipo = [self.fetchedResultsController objectAtIndexPath:indexPath];

cell.lblIdentificador.text = [prototipo.identificador stringValue];


return cell;

}

感谢你们。

4

2 回答 2

0

如果您在弄清楚如何使用单元重用机制时遇到问题,那么您可以在继续之前解决这个问题。UITableViews 是 iOS 的核心构建块之一,它使用了大多数对开发至关重要的核心概念。

也就是说,我仍然会尽力帮助你。根据您的代码,我希望您的prototipo对象是nil. 与执行操作null会出错的其他语言不同,调用选择器nil不会出错。

您可以通过设置断点并遍历您的代码来确认这一点。

于 2013-10-28T01:22:59.923 回答
0

将您的代码更改为:

static NSString *CellIdentifier = @"MyCell";
MyCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
   cell = [[MyCell alloc] initWithStyle:UITableViewCellStyleDefault  reuseIdentifier:CellIdentifier];
}
Prototipo *prototipo = [self.fetchedResultsController objectAtIndexPath:indexPath];
cell.lblIdentificador.text = [prototipo.identificador stringValue];
return cell;

你会很高兴的

注意:一定要确定prototipo不是a nil,可以NSLog用来复查返回值

于 2013-10-28T01:26:18.650 回答