1

プロジェクトにUIViewControllerを追加しましたが、ボタンを追加する場合を除いて、正常に機能します。エラーが発生します:*キャッチされなかった例外'NSUnknownKeyException'が原因でアプリを終了しています、理由:' [setValue:forUndefinedKey:]:このクラスはキーキャンセルのキー値コーディングに準拠していません。

ヘッダーファイルと実装ファイルのコードは次のとおりです。アシスタントエディターを使用し、各コントロールからヘッダーファイルにCtrlキーを押しながらドラッグすると、このコードはすべて自動生成されます。

SignUpViewController.h:

#import <UIKit/UIKit.h>

@interface SignUpViewController : UIViewController {


    IBOutlet UITextField *leader;
    IBOutlet UITextField *emailAddress;
    IBOutlet UITextField *firstName;
    IBOutlet UIScrollView *scrollView;
    IBOutlet UITextField *lastName;
}
- (IBAction)cancel:(id)sender;
- (IBAction)signUp:(id)sender;

@end

SignUpViewController.m

#import "SignUpViewController.h"

@interface SignUpViewController ()

@end

@implementation SignUpViewController

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

- (void)viewDidLoad
{
    [super viewDidLoad];
    [scrollView setScrollEnabled:YES];
    [scrollView setContentSize:CGSizeMake(320, 1000)];

}

- (void)viewDidUnload
{
    firstName = nil;
    lastName = nil;
    emailAddress = nil;
    leader = nil;
    [super viewDidUnload];
}

- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
    return (interfaceOrientation == UIInterfaceOrientationPortrait);
}


- (IBAction)cancel:(id)sender {
}

- (IBAction)signUp:(id)sender {
}
@end

エラーが発生している理由がわかりません。何か案は?

4

1 に答える 1

3

このエラーは、ソースでIBOutletを削除したときに発生しますが、InterfaceBuilderで配線を解除しないでください。XIBファイルをチェックして、古いプロパティが残っていないことを確認します。古い有線プロパティには、感嘆符(!)が表示されます。

于 2012-04-08T02:26:31.260 に答える