1. 程式人生 > >this class is not key value coding-compliant for the key '***'的解決方案

this class is not key value coding-compliant for the key '***'的解決方案

專案中經常會遇到this class is not key value coding-compliant for the key '***.'這樣的崩潰,原因經過分析可能是由以下幾點造成的:

1,在載入介面的時候,總是報這個錯誤:

解決方法:

因為在xib的連線中,有一個變數是已經刪除了的。雖然程式碼已經刪除了,但是連線還是存在於xib檔案中。

刪掉這個多餘的連線線就好了。

2,檢查程式碼拼寫,有時候改了類的名字,但是有些地方沒有改過來,就會一直報這種錯誤,比如

NSArray *secondLevelObjects = [[NSBundlemainBundleloadNibNamed

:@"XOpenPositionContentCell"owner:niloptions:nil];

重點是字串中的類名,一般使用類名定義的時候很好找出來改掉,但是寫在字串裡面的不容易被發現



3,我今天遇到的就是這一條,真的不好找,就是在連線的時候選擇的是cell 不是file‘s owner,有時候設定了xib檔案的class,但是專案未更新過來,重啟xcode

4,連線的時候選擇的是cell 不是file‘s owner,有時候設定了xib檔案的class,但是專案未更新過來,重啟xcode

1,載入自定義的tableViewCell的時候總是死在:

        XInstrumentOpenCell

 *cell = [tableViewdequeueReusableCellWithIdentifier:CellTableIdentifier];

log裡面報錯:this class is not key value coding-compliant for the key closeLotTextField

解決方法:

因為xib的屬性檢查器中,沒有設定Identifier為cellID

staticNSString *CellTableIdentifier = @"cellID";

好了,暫時就歸結到這幾點,如果還有其他的原因,也歡迎前來指正新增
4,連線的時候選擇的是cell 不是file‘s owner,有時候設定了xib檔案的class,但是專案未更新過來,重啟xcode