0

xcodeでアプリを作成しましたが、アプリをビルドまたは実行すると問題はないと表示されますが、起動イメージが表示された後、アプリがクラッシュしてこのエラーが発生するようです。

キャッチされなかった例外'NSUnknownKeyException'が原因でアプリを終了しています。理由:'[setValue:forUndefinedKey:]:このクラスはキーhigh_score_outletのキー値コーディングに準拠していません。 *まずスローコールスタック:(0x1c24012 0x1609e7e 0x1cacfb1 0xcae41 0x4c5f8 0x4c0e7 0x76b58 0x619019 0x161d663 0x1c1f45a 0x617b1c 0x6198da 0x3fb68b 0x3fb9a2 0x3fa876 0x40bcb5 0x40cbeb 0x3fe698 0x255fdf9 0x255fad0 0x1b99bf5 0x1b99962 0x1bcabb6 0x1bc9f44 0x1bc9e1b 0x3fa17a 0x3fbffc 0x211d 0x2055)のlibc ++ abi.dylib:例外をスロー呼ばTERMINATE

アプリをビルドまたは実行するときにコードに問題がないと表示されているため、クラッシュする理由がよくわかりません。

それを修正する方法はありますか?

4

3 に答える 3

3

プロパティの名前を変更し、IBOutletをInterfaceBuilderファイルのコンポーネントに再接続するのを忘れた可能性があります。IBOutletであるコードのプロパティを変更するときはいつでも、Interface Builderをチェックして、接続が切断された場合はそのアイテムを再接続する必要があります。

ペン先がロードされている実行時にInterfaceBuilderアウトレットが接続されるため、アプリは正常にコンパイルされます。

于 2013-02-10T22:48:39.530 に答える
3

おそらくIBOutlet時代遅れになっているものです。

ストーリーボードにロードされる最初のコントローラーに移動し、(⌥⌘6)をチェックして、にConnections Inspector接続されているコンセントを探しますhigh_score_outlet

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

これは、以前のリファクタリングから残っている可能性があります。あなたはそれを切断し、正しい接続を設定したいと思うでしょう

于 2013-02-10T23:03:24.170 に答える
0

プロパティを持つクラスを確認してください-high_score_outlet。表示されるメッセージは、ランタイムが関連するプロパティの実装を見つけることができないことを意味します。したがって、次のいずれかです。

  1. クラスで正しく定義していない、または
  2. あなたはそれがあなたが思っているクラスではないオブジェクトでそれを呼んでいます。デバッガーを使用して、メソッドが呼び出されているオブジェクトのクラスを確認します。
于 2013-02-10T22:40:58.777 に答える