【发布时间】:2012-06-17 09:40:15
【问题描述】:
我的控制器中有一个UITableView。 UITableView 的单元格有 xib。
由于某种原因,加载表格时,单元格的视图被隐藏了。
我可以选择单元格,我看到单元格不是 nil,视图也不是 nil,仍然隐藏单元格。
代码如下:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath: (NSIndexPath *)indexPath
{
NSString *cellIdentifier = @"CategoryCell";
CategoryCell *cell = [tableView dequeueReusableCellWithIdentifier:cellIdentifier];
if (cell == nil){
NSArray* topObjects = [[NSBundle mainBundle] loadNibNamed:cellIdentifier owner:self options:nil];
for (id obj in topObjects){
if ([obj isKindOfClass:[CategoryCell class]]){
cell = (CategoryCell*)obj;
}
}
}
id object;
if (indexPath.row < items.count)
object = [items objectAtIndex:indexPath.row];
if ([object isKindOfClass:[MenuCategory class]]) {
// Configure the cell
MenuCategory *cellInfo = (MenuCategory *)object;
[cell setCategory:cellInfo];
}
else if([object isKindOfClass:[MenuSubCategory class]]){
// Configure the cell
MenuSubCategory *cellInfo = [self.items objectAtIndex:indexPath.row];
[cell setSubCategory:cellInfo];
}
return cell;
}
【问题讨论】:
-
你需要保留这个单元格 = (CategoryCell*)[obj retain];,它可能解决不了这个问题,但无论如何都应该保留
-
感谢提醒。我已经添加了保留。但这没有帮助。
-
问题在于单元格中的内容,因为单元格被正确引用尝试检查 [cell setSubCategory:cellInfo];或 [细胞集子类别:细胞信息];工作与否。
标签: iphone objective-c xcode uitableview