【发布时间】:2013-04-04 14:02:59
【问题描述】:
我知道以前曾发布过类似的问题,但我在其中找不到适合我的解决方案,所以请多多包涵...
我在 xcode 中有一个带有自定义表格单元格的表格视图。单元格目前只不过是一个标签:
SiteFileCell *cell = [tableView dequeueReusableCellWithIdentifier:CellIdentifier forIndexPath:indexPath];
cell.fileNameLabel.text = [self.listDir.filesInfo objectAtIndex:indexPath.row];
这很好用。我本质上是在做一个目录钻取结构。当我选择一个单元格时,它会通过将新的表格视图推送到导航控制器堆栈并重新加载所有表格单元格来进入下一个级别。
此时我看到一个经常报告的错误:
无法使具有标识符 Cell 的单元出列 - 必须为标识符注册一个 nib 或一个类,或者连接情节提要中的原型单元
因此,经过研究,我看到了我应该注册类型的建议:
[self.tableView registerClass:[SiteFileCell class] forCellReuseIdentifier:@"FileCell"];
如果我这样做,效果会很好,但所有单元格都不会显示任何标签!
我已经看到一些关于在单元类的 initWithStyle 方法中可能需要自定义代码的参考,但我不太清楚那里需要什么,所以有人可以给我更多的指针吗?
【问题讨论】:
-
能否请您发布整个 cellForRowAtIndexPath 方法。
-
你应该实例化你的单元格,就像 if ( cell == nil ) {cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:CellIdentifier];}
-
还有,你去关卡的时候,是不是用同一个tableView?
-
如果您在 Interface Builder 中创建自定义单元格,您可以在那里设置标识符,它会正常工作。
-
这个问题的答案取决于您创建自定义单元格的位置,那么您是在哪里创建的,xib、故事板或代码?
标签: ios xcode tableviewcell