3

私はこの質問を広範囲に検索してきましたが、答えが見つかりませんでした。

問題は、「このクラスは、キー ビューのキー値コーディングに準拠していません」です。

可能な限りコードを削除しましたが、それでもこのエラーが表示され続け、頭がおかしくなりました!

次の someSelector.h ファイルがあります

#import <UIKit/UIKit.h>
#import <QuartzCore/QuartzCore.h>

@interface someSelector : UIViewController {
    UIView *view;
}

@property (nonatomic, retain) IBOutlet UIView *view;

@end

これは someSelector.m ファイルの関連ビットです

#import "someSelector.h"

@synthesize view;

- (id)initWithNibName:(NSString *)nibNameOrNil bundle:(NSBundle *)nibBundleOrNil
{
    self = [super initWithNibName:nibNameOrNil bundle:nibBundleOrNil];

    return self;
}

- (void)viewDidLoad
{
    [super viewDidLoad];
}

これは私が得るエラーです:

2012-08-30 12:42:51.714 SomeApp[2280:f803] *** Terminating app due to uncaught exception    'NSUnknownKeyException', reason: '[<UIApplication 0x6821350> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key view.'

試すべきことはすべて試したと思います。アウトレットは正しいようで、何千回も再接続を試みました。また、ファイルの所有者のクラス名を someSelector に名前を付けたので、それも適切なようです...

私を助けてください、私は今考えがありません...

4

3 に答える 3

11

私は同じ問題を抱えていましたが、私にとっての解決策は、Target -> General -> Main Interfaceそこにあるエントリを削除することでした。完全に空白のままにします。私のために働いた(私はここでPhoneGapを使用している)。

于 2013-09-26T12:36:26.520 に答える
1

で検索しようとしているクラスviewは。であることに注意してくださいUIApplication。最も可能性の高い原因はUIApplication、サブクラスの代わりにファイルの所有者が設定された.xibファイルがあるUIViewControllerか、ファイルの所有者が正当にアプリケーションクラスであるが、ビューアウトレットをそれに接続していることです。

プロジェクト内の.xibファイルを開き、[ファイルの所有者]を選択して、IDインスペクターでそのクラス名を確認します。

ソースコードとして.xibファイルを開き、「view」のテキスト検索を実行すると、これらを見つけるのが簡単な場合があります。

于 2012-08-30T11:24:11.353 に答える
0

someSelector クラスの xib ファイルに問題があります。警告が表示されているかどうかを確認し、Abizem が正しいかどうかを確認してください。ビューをプロパティとして宣言する必要はありません。

于 2012-08-30T11:09:04.290 に答える