1

ユーザーにランダムな文字列を表示し、ユーザーにキーパッドから同じ文字列を入力するように求める iOS のアプリケーションに取り組んでいます。私がやりたいのは、ユーザーが入力した文字列を比較することです。ユーザーが「return」キーを押した後にのみです。これは可能ですか?

これは、私がこれを行っている関連する方法です。

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {


    if (textField.tag == 1)
    {

            userString = @"";
            userString = keypadText.text;

            [keypadText resignFirstResponder];

           //here 'rand' is the random string that was presented earlier to the user, and userString is the text that the user has entered.
            if ([userString isEqualToString:rand]) {

                //do something

            }

            else {

                //do something else

            }

            [self.navigationController popViewControllerAnimated:YES];


    }

    return YES;

}

私が言ったように、ユーザーが「リターン」キーを押した後にのみ比較を行い、それまでは、ユーザーが指定されたテキストを入力し、必要な修正を行う機会をできるだけ多く与えたい.

誰かがこれを行う方法を教えてもらえますか?

4

1 に答える 1

6

textFieldDidFinishingEditingの代わりに使用してshouldChangeCharactersinRangeください。

もちろん、それもあります

- (BOOL)textFieldShouldReturn:(UITextField *)textField

後者はより良い方法です。

とても簡単。

于 2013-01-17T20:23:54.000 に答える