1

登録クラスがあり、(UIButton)「実行」ボタンでユーザーが入力したすべてのフィールドをチェックすると、すべてのフィールドがUITextFieldになります。Registerクラスの「Go」ボタンを押して次のViewControllerに移動するアクションを作成しました。また、アクション関数でユーザー入力(たとえば、不正な電子メールx @ xxx)を確認し、ユーザーが不正なメールを入力したかどうかを確認します。入力新しい画面に移動したくない。ですから、長い話を短くするために、私の質問は、画面間を移動するための条件をどのように作成するかです。「ユーザーが正しい入力を入力した場合は、移動してください...それ以外の場合は」フォームの正確さを確認するために別のボタンを作成したくないので、最初にユーザーがチェックボタンを押し、次に2番目のボタンを押して送信します。形。

ありがとうございました!

4

2 に答える 2

1
-(BOOL) validateField:(UITextField *)field{

// perform your validation and return YES or NO

return YES;
}

ボタンアクションで

BOOL validated = NO;

if ([self validateField:textfield1]){

validated = YES;.

}else{
return; // or your error message
}
if ([self validateField:textfield2]){

validated = YES;
}else{

return;// or your error message

}

等々..

if (validated){
[self pushViewController:yourcontroller]
}
于 2012-11-25T19:35:14.487 に答える
1

これを行う最も簡単な方法は、を使用することBOOLです。たとえば、このBOOLをメソッドfalse内に設定できます。viewDidLoad入力データで行うすべてのチェックが正しく渡された場合は、これBOOLをに設定しtrueます。これで、この値を使用して、次のViewControllerをプッシュすることもプッシュしないこともできます。例えば

if (theBOOL) {
    // push the next view controller
} else {
    // display a message on the current view controller to recheck the input data
}
于 2012-11-25T19:35:49.137 に答える