0

ビューコントローラーにセグエするログインコントローラーを持つiPadアプリに取り組んでいます。ログイン コントローラは次のように宣言されます。

@interface LoginController : UIViewController <UITextFieldDelegate>

ストーリーボードには(予想どおり)、ユーザー名とパスワードのテキストフィールドと、認証とメインアプリへのログイン用のボタンがあります。ボタンは shouldPerformSegueWithIdentifier(...) 関数を呼び出し、ビューはログイン ビューからメイン ビューに切り替わります。

ユーザーがパスワードテキストボックスでリターンを押したときに、これをプログラムで模倣したいと思います。イベントをトラップしましたが、スイッチオーバーが発生しないようです。私が使用しているコードは次のとおりです。

    if (theTextField == self.password)
{
    BOOL loginSuccessful = [self shouldPerformSegueWithIdentifier:@"switchToViewer" sender:self];

    if (loginSuccessful == YES)
    {
        [self dismissViewControllerAnimated:YES completion:^{
            NSLog(@"I should be dismissing here!\n");
        }];
    }
}

ただし、ビューが却下されることはありません。これは iOS 7 上にあることに注意してください。それが重要かどうかはわかりません。何か案は?

編集:今のところ私の回避策は、ボタンタッチイベントを偽装することです:

[self.signIn sendActionsForControlEvents: UIControlEventTouchUpInside];

ハッキーですが、動作します:)

4

1 に答える 1