2012-09-13 44 views
3

我有一個帶有一些數據的UITableView單元。EXC_BAD_INSTRUCTION在調用導航控制器中的其他視圖時

當我選擇一個單元格時,我希望表格視圖將我重定向到另一個視圖。 下面是我在做什麼:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { 
    Multa *multa = [self.multas objectAtIndex:indexPath.row]; 

    DetalheMultaViewController *form = [[DetalheMultaViewController alloc] initWithMulta:multa]; 
    form.delegate = self; 

    [self.navigationController pushViewController:form animated:YES]; 
} 

然而,在最後一行我得到這個錯誤:EXC_BAD_INSTRUCTION。

而且在我得到這個消息控制檯(我的理解是什麼說法,但不明白髮生了什麼):

2012-09-16 17:11:25.719 Multas Sociais[5092:11603] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<DetalheMultaViewController 0x7a46e10> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key fotoUrl.' 
*** First throw call stack: 
(0x1547052 0x1b0cd0a 0x1546f11 0xf2d032 0xe9ef7b 0xe9eeeb 0xeb9d60 0x7ac91a 0x1548e1a 0x14b2821 0x7ab46e 0x652e2c 0x6533a9 0x6535cb 0x652c1c 0x67956d 0x663d47 0x67a441 0x67a4f9 0x871c68 0x6314a1 0x63212b 0x8714c7 0x65a427 0x65a58c 0x65a5cc 0x3c2f 0x61d71d 0x61d952 0xea586d 0x151b966 0x151b407 0x147e7c0 0x147ddb4 0x147dccb 0x1f7a879 0x1f7a93e 0x58da9b 0x2608 0x2565) 
terminate called throwing an exception(gdb) 

想法?

非常感謝。

+0

發佈崩潰問題時,請包含更多信息。沒有崩潰發生孤立;調試器/控制檯可以包含一個堆棧跟蹤,並可能告訴你比你在這裏發佈的更多。 –

+0

謝謝,我不知道控制檯上有錯誤的詳細信息。我已經更新了我的問題。 – gabsferreira

+0

什麼是'fotoUrl'?它真的被定義爲一個屬性嗎? – Macmade

回答

3

你可能有一箇舊的IBOutlet中名爲fotoURL就是直到你的XIB文件連接到某個對象,而你從你的.h在你的代碼刪除IBOutlet中至今。

編輯您的XIB文件並刪除與舊的fotoURL插座的連接。

如果這還不夠,您可能需要清潔您的項目(「產品」菜單,「清潔」,或爲了更好的結果按住「alt」鍵並選擇「清潔生成文件夾...」),然後重新構建。

1

看來您的視圖控制器在推送時試圖訪問fotoURL,這不存在。這可能在視圖控制器的viewDidLoad方法中,但它可能是它的nib文件中的設置無效;也許fotoURL插座存在於早期版本的筆尖,並且從未斷開連接?

2

我可以假設你在DetalheMultaViewController的xib中有一些fotoUrl IBOutlet屬性,並且你已經將它鏈接到某個對象。稍後,您已從類接口中刪除此屬性,但xib中的鏈接仍然存在。所以現在,當框架加載xib時,它會嘗試設置一個值,但是沒有這樣的值。

相關問題