0

過去 5 時間、このエラーに頭を悩ませていました。私は可能な限りすべてのグーグルを実行しましたが、どの解決策もうまくいかないようですので、私の特定の状況を説明し、あなたが私の問題が何であるかを選択できるかどうかを確認します.

私のメイン UI は、その中に 6 つのビューを持つビューです。各ビューには、画像とその中にラベルが含まれています。オブジェクトを一緒に含めるためにこれを行うことはできますか?

とにかく、ファイル所有者からすべての接続を 1 つずつ消去し、最初からやり直しました。Ctrl キーを押してマウスをメイン ビューにドラッグし、ビューにアタッチしました。プロジェクトを実行しました。すばらしい、エラーはありません。

サブビューの 1 つを接続しました、バム! すぐエラーが出ます。

私のファイル所有者のカスタム クラスは、私の UIViewController クラスに設定されています。

IBOutlets をヘッダーで適切に定義し、実装で合成しました。

私を助けるために必要なことを教えてください。

** 編集 **

ブレークポイントを設定したところ、 --> <-- でマークされた行が原因であることがわかりました。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds];
    self.viewController = [[UIViewController alloc] initWithNibName:@"View_main" bundle:nil];
    self.window.rootViewController = self.viewController;

--> [self.window makeKeyAndVisible]; <--

    return YES;
}

そして、コンパイラによってスローされるエラーは次のとおりです。

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

すべての助けを歓迎します!

4

2 に答える 2

2

私のファイル所有者のカスタム クラスは、私の UIViewController クラスに設定されています。

これはあいまいで、次のものと衝突します。

self.viewController = [[UIViewController alloc] initWithNibName:@"View_main" bundle:nil];

カスタムサブクラス(言及していないクラス名)ではなく、「バニラ」UIViewControllerを使用しています。nib がロードされ、コンセントを接続しようとすると、コンセントが存在しないため、例外が発生します。UIViewController サブクラスを使用するように alloc/init を変更します。

#import "View_main.h"

...

self.viewController = [[View_main alloc] initWithNibName:@"View_main" bundle:nil];

また、View Controller のカスタム クラスが nib でも View_main に設定されていることを確認してください。

于 2012-08-15T07:10:36.913 に答える
2

このリンクをチェックすると、ここで答えが見つかります

「このクラスはキー XXX のキー値コーディングに準拠していません」というエラーは通常、実際には存在しないプロパティを参照する nib をロードするときに発生します。これは通常、コードからアウトレット プロパティを削除し、nib の接続からは削除しない場合に発生します。

于 2012-08-15T06:23:20.523 に答える