【发布时间】:2016-12-21 23:52:48
【问题描述】:
我有两个UITableView,我想为这两个UITableView 使用相同的自定义单元格。
问题是其中只有一个可以正常工作。只有第一个表显示行。
当我调试时,我看到第二个表的 cell.lb_subject 为零。
MyCustomCell 仅在第一个表上被定义为 原型单元格(不是 xib),因为我没有看到定义同一行两次的意义。
- (UITableViewCell *)tableView:(UITableView *)mytableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
static NSString *simpleTableIdentifier = @"MyCustomCell";
MyCustomCell *cell = [mytableView dequeueReusableCellWithIdentifier:simpleTableIdentifier];
if (cell == nil) {
cell = [[MyCustomCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:simpleTableIdentifier];
}
MyRowData* data = [tableData objectAtIndex:indexPath.row];
cell.lb_subject.text = data.subject;
- 我有两个 UIViewController
- 每个 UIViewController 一个表
- 我没有 Xib,我有故事板。
- 我已将 demo 上传到我的 repo
【问题讨论】:
-
我不清楚您所说的“MyCustomCell 仅在第一个表上被定义为原型单元格,因为我没有看到定义同一行两次的意义。”你的意思是“我只为 Interface Builder 中的第一个表设置了原型单元格的类”,还是“我只为第一个表调用了
registerClass:forCellReuseIdentifier:”,还是别的什么? -
@Palpatim 第一个。
-
尝试在界面生成器的第二个表格中定义原型单元的类。您实际上并没有定义同一行,而是在告诉系统“使用此类作为此场景中表格的原型行的实现。”
-
但我必须设计两次相同的单元格,并连接iboutlets,对吧?
-
抱歉,我将情节提要中的原型单元格与 nib/xib 单元格混为一谈。我常用的方法是定义一个 nib/xib 并将其用作单点控制,如stackoverflow.com/questions/26342151/… 中所述
标签: ios objective-c uitableview