2012-04-06 89 views
1

我將我的項目轉換爲ARC後,我確信這是一個愚蠢的問題。此方法已在第一行開始崩潰:loadNibNamed:owner:選項在轉換爲ARC後崩潰的應用程序

- (MyView*) loadMyView 
{ 
    NSArray* elements = [[NSBundle mainBundle] loadNibNamed:@"MyView" owner:nil options:nil]; 

    return (MyView*)[elements objectAtIndex:0]; 
} 

在轉換爲ARC之前,此工作正常。該應用程序崩潰在模擬器與以下消息:

[CFArray release]: message sent to deallocated instance 

有人可以告訴我我做錯了什麼?

回答

0

嘗試改變從nilowner:參數self

NSArray* elements = [[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil]; 

我猜,因爲你是主人設置爲無,您的陣列被爲零的保留計數創建的,因此被釋放馬上。

+0

不幸的是,這並沒有幫助。同樣的崩潰。 – mbcrute 2012-04-06 05:10:29

2

那麼,在睡覺之後,我決定只是刪除筆尖,並重新開始,看看是否有幫助和足夠肯定,它現在起作用。我不知道轉換到ARC會導致此問題,但刪除Nib並從頭開始重新創建它可以解決問題。

+0

得到了同樣的問題,刪除並重新開始工作! -_- – Marc 2015-12-15 23:45:03

0

我有同樣的問題。它通常發生在你的nib文件中有不一致的地方。在我的我有一些按鈕,仍然通過IBOutlets連接到我在頭文件中刪除的某些對象。希望這可以幫助。

相關問題