0

いくつかの UITextViews を持つビューがあります。ユーザーは個人データ、名前、姓、電子メールなどを入力できます。編集が終了すると、ユーザーは右上隅の [完了] をクリックし、ビューは次のように前のビューに戻ります。

- (void)save:(id)sender
{

    [self.view.window endEditing:YES];

    if (self.data ...)
    {
        [self updateUser];
        [self.navigationController popViewControllerAnimated:YES];
    }

}

顧客は、いくつかのフィールド (電子メールなど) で検証を追加するよう要求しました。検証後、UIAlertView はデータ入力が無効であることを通知するため、データは保存されません。私の問題は、AlertView の OK ボタンが「保存」メソッドを呼び出し、navigationController が呼び出され、popViewControllertAnimated が呼び出されることです。

ここでの問題は、UIAlertView の後で (popViewControllerAnimated を介して) 前のビューへの自動ナビゲーションを回避したいということです。より正確には、編集ビューに留まり、新しい有効な電子メールを入力したいと考えています。

アラート ビューのコードは次のとおりです。

- (void)alertInvalid {

    UIAlertView *alertView = [[UIAlertView alloc] initWithTitle:@""                                                                      message:NSLocalizedString(@"res_CurrentPasswordErrorAlert",nil)
                              delegate:nil cancelButtonTitle: NSLocalizedString(@"res_OK",nil) otherButtonTitles:nil];

    [alertView show];

}

-(BOOL)textFieldShouldEndEditing:(UITextField *)textFieldメソッドを介して呼び出されます。では、アラートメッセージの後に現在の UITextView が再び応答するようにコードを変更するにはどうすればよいですか?

4

1 に答える 1