按照NIB(动态选项)中自定义单元格的文档,我有这个方法。 (视图本身不是UITableViewController,但它已正确连接。)
- (UITableViewCell *)tableView:(UITableView *)tableView
cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellIdentifier = @"ReusableCell";
UITableViewCell *cell = (LoadGameCell *)
[tableView dequeueReusableCellWithIdentifier:CellIdentifier];
if (cell == nil) {
cell = [[NSBundle mainBundle]
loadNibNamed:@"LoadGameCell" owner:self options:nil];
cell = loadGameCell;
self.loadGameCell = nil;
}
/*
cell setup
*/
return cell;
}
if
语句中的第一行是我遇到问题的。
Incompatible pointer types assigning to 'UITableViewCell *' from 'NSArray *'
Incompatible Objective-C types assigning 'struct NSArray *',
expected 'struct UITableViewCell *'
没有错误/崩溃使用这些警告运行应用程序,但我宁愿不忽略/压制它们。它会在以后伤害更多。
如果不是上述警告的直接结果,则还有另一个问题。我无法获取视图的方法,只有标签。 (也就是说,我可以自定义标签,但不能自定位旁边的图像视图。)
答案 0 :(得分:0)
正如文档告诉你的那样,loadNibNamed:owner:options:
返回一个数组。要访问NIB中的单元(假设它是NIB中唯一的根级对象),请在objectAtIndex:0
的结果上调用loadNibNamed:owner:options
。