Xcode - 「NSUnknownKeyException」を修正する方法、理由: 「… このクラスはキー X のキー値コーディングに準拠していません」というエラー? 質問する

Xcode - 「NSUnknownKeyException」を修正する方法、理由: 「… このクラスはキー X のキー値コーディングに準拠していません」というエラー? 質問する

クラスで作成されたUILabelに をリンクしようとしています。IBOutlet

アプリケーションが次のエラーでクラッシュします。

*** 
Terminating app due to uncaught exception
'NSUnknownKeyException', reason: 
'[<UIViewController 0x6e36ae0> setValue:forUndefinedKey:]: 
this class is not key value coding-compliant for the key XXX.'

これはどういう意味ですか? どうすれば修正できますか?

ベストアンサー1

xib の接続に問題がある可能性があります。

このエラーは何度も発生しています。この場合、TechZen の回答は完全に正しいのですが、もう 1 つの一般的な原因は、 nib の File's Owner にすでに接続している .h/.m のIBOutlet プロパティの名前を変更した場合です。

ペン先から:

  1. IB でオブジェクトを選択し、「接続インスペクター」に移動します。
  2. 「参照アウトレット」の下で、オブジェクトがまだ古いプロパティ名に接続されていないことを確認します。接続されている場合、小さな「x」をクリックして参照を削除し、再度ビルドします。

    ここに画像の説明を入力してください

Storyboard を使用している場合のもう 1 つの一般的な原因は、UIButton に複数の割り当てがある可能性があることです (解決策は nib の場合とほぼ同じです)。

  1. ストーリーボードを開き、UIButtonを右クリックします。
  2. このボタンには複数の割り当て/参照があることがわかります。小さな「x」が付いた灰色の「メイン...」ウィンドウの 1 つを削除します。

    例2

おすすめ記事