xcode objectivecにてアプリ製作中の初心者です。
どなたかお詳しい方、教えて下さいませ。
現在、web上のサンプルを参考に、UITextfieldの入力文字制限をおこないたいと思っております。
具体的には、110は入力可能だけど111や112などの切りの悪い数字を無効にしたいと考えています。
入力桁は2桁か3桁なので、2桁の場合90は可能だけど、91や92は無効にしたいと思っております。
どのようにしたらいいでしょうか。
初心者の為、もっといい方法がございましたら他の方法なども教えて頂けますと幸いです。
ご助言宜しくお願いいたします。
// テキストフィールドの入力値変更イベント
- (BOOL)textField:(UITextField *)textField shouldChangeCharactersInRange:(NSRange)range replacementString:(NSString *)string
{
NSString *strNgWord = @"!\"\\#$%&'()@[]{}|^~=;:\_?<>,/-*."; // チェック対象の文字を複数定義
// 文字数チェック
if (8 < range.location + range.length + [string length]) {
// 文字数制限を超える場合は入力取り消し
return NO;
}
// 無効な文字列が含まれていないかどうかチェック
for (int i=0; i<[strNgWord length]; i++) {
// チェック対象の文字を設定
NSString *strCk = [strNgWord substringWithRange:NSMakeRange(i, 1)];
// 入力値がNGワードと一致する場合
if ([string isEqual:strCk]) {
// 入力取り消し
return NO;
}
}
//入力許可
return YES;
}