我创建了自己的类来显示类似电子表格的布局。我想对 UITableViewCells 进行入队和出队。我使用此代码来执行此操作:
- (void) enqueueReusableCell: (ABTableViewCell *) cell {
if (!enqueuedCells[cell.reuseIdentifier])
enqueuedCells[cell.reuseIdentifier] = cell;
}
- (UITableViewCell *)dequeueReusableCellWithIdentifier:(NSString *)identifier {
ABTableViewCell *cell;
if (enqueuedCells[identifier]) {
cell = enqueuedCells[identifier];
return cell.tableViewCell;
}
return nil;
}
(我有一个包装类,用于在排队存储一些额外数据时保存 UITableViewCell)
问题是,当我将单元格出列并尝试访问子视图时,我什么也得不到。在我的单元格出列后,以下行返回一个 nil 对象。
UILabel *label = (UILabel*) [cell viewWithTag:1];
这是在 XCode 4.5.x 上使用 ARC。有任何想法吗?
完整源代码在这里https://github.com/AaronBratcher/ABTableView/
(dequeue 现在只返回 nil 以避免出现问题)