未分类编译iOS5故事板中的失败错误

时间:2012-05-10 04:40:40

标签: ios error-handling storyboard

编译我的应用时出现了一个非常奇怪的错误,就像下图所示,有人知道发生了什么事吗?

enter image description here

日志中的错误:

  

错误:编译失败。

     
Underlying Errors:
    Description: Couldn't compile connection: <IBCocoaTouchOutletConnection:0x400d6f420 <IBProxyObject:0x400d6e080> => nameShow => <IBUILabel: 0x400c7e0c0>
    Description: Couldn't compile connection: <IBCocoaTouchOutletConnection:0x400d71200 <IBProxyObject:0x400d6e080> => catShow => <IBUILabel: 0x400bf9280>
    Description: Couldn't compile connection: <IBCocoaTouchOutletConnection:0x400d6ffc0 <IBProxyObject:0x400d6e080> => numShow => <IBUILabel: 0x400be0380>
  

2 个答案:

答案 0 :(得分:18)

问题是你有IBOutlets链接到原型单元格。请注意原型单元格就是:原型。所以你可以有多个实例。因此Xcode不知道将IBOutlet变量链接到哪个实例。

你必须等到在cellForRowAtIndexPath中实例化单元格以分配属性

答案 1 :(得分:2)

这可能会有所帮助。关键是您需要在IB中为故事板出口设置标记值。

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{

  UITableViewCell *cell = [[UITableViewCell alloc] init];

  cell = [tableView dequeueReusableCellWithIdentifier:@"LogRecordCell"];

  cmiJournal = (CMIJournal *)[fetchedResultsController objectAtIndexPath:indexPath];

  UILabel *useJName = (UILabel *)[cell.contentView viewWithTag:101];
  UILabel *useJTime = (UILabel *)[cell.contentView viewWithTag:102];
  UITextView *useJRecord = (UITextView *)[cell.contentView viewWithTag:103];

  useJName.text = cmiJournal.cmiJournalName;
  useJTime.text = fnlDate;
  useJRecord.text = cmiJournal.cmiJournalRecord;

  return cell;
}