2010-12-30 6 views
0

私は最初に認証が必要なiPhoneアプリケーションを作成しています。それはそれはから呼び出されたときに動作しません何らかの理由でpresentModalViewController問題

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    self.registerProfile = [[[RegisterViewController alloc] initWithNibName:@"RegisterProfile" bundle:nil] autorelease]; 
    [self presentModalViewController:self.registerProfile animated:YES]; 
    [self.registerProfile release]; 
} 

: は、したがって、すぐのviewDidLoadでアプリケーションの負荷として、私は担当登録と認証のあるのUIViewControllerを割り当て、私はそうのようにそれを提示しますviewDidLoad。 しかし、私はそのビュー上にボタンを作成し、上の同じコードを追加すると、私はそれをクリックすると、 それが動作し、ビューが表示されます。

なぜviewDidLoadでは動作しないのですか?

また、NavBarというAppleの例もテストしました。ボタンをクリックすると、presentModalViewControllerを使用してビューが表示されます。ViewDidLoadに追加したときに、機能しませんでした。

ここには何が欠けていますか?ビューが読み込まれ、ボタンを押すことによってではなく、そのプロセスが自動的に必要になります。

ありがとうございます!

答えて

1

私は解決策を見つけました。 ビューを初期化できないため、同じコードをviewDidAppearに入れて、viewDidLoadには入れません。

0

私は上記のコードとほぼ同じコードを持っていますが、正常に動作します。これをやろうとしてください:

- (void)viewDidLoad { 
    [super viewDidLoad]; 
    self.registerProfile = [[[RegisterViewController alloc] initWithNibName:@"RegisterProfile" bundle:nil] autorelease]; 
    registerProfile.delegate = self; //set delegate as yourself 
    [self presentModalViewController:self.registerProfile animated:YES]; 
    //[self.registerProfile release]; //don't worry about releasing it, it's been autoreleased. 
} 
関連する問題