当我创建UITableView
时,tableview没有原型单元格,因此我删除了原始视图并添加了UITableView
。但是,当创建新的tableview时,原型仍然没有出现,所以我将一个tablecell拖入表视图并命名标识符" Cell"在故事板中。但是,当我试图将我的解析查询填充到tableview单元格时,它会一直崩溃,所以我放置一个单元格== nil,发现单元格等于nil。我想知道我做错了什么?或者无论如何都要识别细胞?
我的代码:
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"Cell";
UITableViewCell *cell = [tableView
dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[UITableViewCell alloc]
initWithStyle:UITableViewCellStyleDefault
reuseIdentifier:CellIdentifier];
}
PFObject *shop=[self.shops objectAtIndex:indexPath.row];
cell.textLabel.text = [shop objectForKey:@"Shopname"];
return cell;
}
我的手机
更新:
答案 0 :(得分:1)
原始代码示例中的单元格标识符为“Cell1”,而故事板中的单元格标识符只是“Cell”。这些必须是相同的标识符。
顺便说一句,如果您有单元格原型,则不应在if (cell == nil) { ... }
中插入cellForRowAtIndexPath
子句。 cell
不应该是nil
,因此您应该诊断该问题而不是手动实例化表格视图单元格。此外,您指定了表格单元格类型“自定义”,但似乎处理它像“基本”。我不会使用“自定义”单元格类型,除非你真的使用单元格的自定义子类。
如果您的应用仍在崩溃,则问题是错误消息是否相同。请更新您的原始问题,并附上您可能收到的任何错误消息的全文(特别是控制台中显示的内容)。如果您有堆栈跟踪,也可以与我们分享。
如果您有错误,请参阅So my app crashed, now what?了解总法律顾问。