Проверка TextField - PullRequest
       1

Проверка TextField

1 голос
/ 11 апреля 2011

В моем приложении для iPad есть TextField.Я хочу, чтобы «цифровая клавиатура» соприкасалась (без знаков препинания и алфавитной клавиатуры). Как это сделать?Как проверить TextField?

Ответы [ 5 ]

4 голосов
/ 11 апреля 2011

Установите текстовую клавиатуру = NumberPad в вашем конструкторе интерфейсов.

Спасибо

Mitesh

4 голосов
/ 11 апреля 2011
NSString *nameRegex =@"[0-9]"; 
NSPredicate *nameTest = [NSPredicate predicateWithFormat:@"SELF MATCHES %@", nameRegex]; 
BOOL isNumber=[nameTest evaluateWithObject:string];

if(isNumber) {
  // valid number found
} else {
  // error message
}

Используйте этот код проверки в методе делегата UITextField textField:shouldChangeCharactersInRange:replacementString:, чтобы пользователь даже не мог ввести недопустимое значение.

2 голосов
/ 11 апреля 2011

Вы не можете получить цифровую клавиатуру на ipad. Вы должны сами проверить, что пользователь ввел с клавиатуры, если его номер не отображать предупреждение для ввода цифр.

1 голос
/ 19 февраля 2013

Вот реализация цифровой клавиатуры для iPad: https://github.com/IngmarStein/NumericKeypad

Отказ от ответственности: это мой собственный форк NumericKeypad от Azu

1 голос
/ 10 октября 2012

Вы также можете использовать с валидацией askee mumber, как показано ниже. Я сделал валидацию, в которой я рассмотрел только числовую и кнопку возврата.

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

  if([string isEqualToString:[NSString stringWithFormat:@"%c", 48]]||[string isEqualToString:[NSString stringWithFormat:@"%c", 49]] ||[string isEqualToString:[NSString stringWithFormat:@"%c", 50]] ||[string isEqualToString:[NSString stringWithFormat:@"%c", 51]] ||[string isEqualToString:[NSString stringWithFormat:@"%c", 52]] ||[string isEqualToString:[NSString stringWithFormat:@"%c", 53]] ||[string isEqualToString:[NSString stringWithFormat:@"%c", 54]] ||[string isEqualToString:[NSString stringWithFormat:@"%c", 55]] ||[string isEqualToString:[NSString stringWithFormat:@"%c", 56]] ||[string isEqualToString:[NSString stringWithFormat:@"%c", 57]] || [string isEqualToString:[NSString stringWithFormat:@"%c", 46]]||[string isEqualToString:@""])

    {

    if(textField==myText)
        return  YES;
    else 
        return NO;
}
else 
    return NO;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...