0

次のようなエラーのあるログイン画面が表示されます。

_loginViewController.error = error;
[_navigationController presentModalController: _loginViewController
                                     animated: YES];

LoginViewController では、次のようにエラー メッセージを画面にスライドさせたいと考えています。

- (void)showErrorAnimated: (BOOL)animated;
{
    _errorLabel.text = [_error localizedDescription];

    [UIView beginAnimations: @"showError"
                    context: NULL];
    CGRect frame = [_errorView frame];
    frame.origin.y = 0; // starts at -frame.size.height
    [_errorView setFrame: frame];
    [UIView commitAnimations];
}

しかし、View Controllerのタイミングに合わせてこれを呼び出す方法がわかりませんpresentModalController:animated:

このタイミングを機能させるにはどうすればよいですか?

4

1 に答える 1

1

viewDidAppearコントローラーのメソッドを使用する必要があります。これは、ビューが表示される時間と呼ばれます。

http://developer.apple.com/library/ios/documentation/uikit/reference/UIViewController_Class/Reference/Reference.html#//apple_ref/doc/uid/TP40006926-CH3-SW17

viewDidAppearビューが表示されるたびに呼び出されるため、注意してください。これは、コントローラーがモーダルコントローラーを提示し、それが閉じられた場合、viewWillAppearandviewDidAppearメソッドが再度呼び出されることを意味します。

于 2011-06-09T23:19:17.467 に答える