0

ログインフォームがあるアプリがあります!また、ユーザーは電話番号でログインしています。携帯電話番号は常に国番号で始まり、+7 または 8 だけで入力できます。+7 記号のみを除く厳密なフィールドが必要です。では、UITextField をカスタマイズして、ユーザーが残りのフィールドのみを変更できるようにするにはどうすればよいでしょうか?? つまり、テキスト フィールドの text プロパティには常に +7 の数字が入力されている必要があるため、ユーザーはそれを削除できず、自分の数字を追加するだけです。理解できることを願っています)))事前に助けてくれてありがとう。

4

2 に答える 2

2

textField:shouldChangeCharactersInRange:replacementString:を使用する必要があります。

UITextField Delegate のクラス リファレンス:

于 2013-04-05T03:10:45.430 に答える
2

最初の 2 文字 (接頭辞) のtextField:shouldChangeCharactersInRange:replacementString:メソッドUITextFieldDelegateと returnを実装する必要があります。NO"+7"

何かのようなもの

- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string {
    return !NSEqualRanges(range, (NSRange){0,2});
}

これにより、テキスト フィールドの最初の 2 文字がまったく変更されなくなります。

于 2013-04-05T03:12:17.250 に答える