Возможен нестандартный iPad с 10-клавишным замком - PullRequest
1 голос
/ 11 мая 2010

и спасибо за ваши ответы заранее.

Я искал возможность иметь 10-клавишный, только числовой ввод, доступный, когда пользователь нажимает на определенные поля, которые не требуют использования полноразмерной клавиатуры.

Я знаю, что всплывающие окна могут правильно отображать пользовательские типы ввода, но кто-нибудь знает, есть ли способ для стандартной 10-клавишной клавиатуры отображать в поповере? И если да, можете ли вы указать мне правильное направление.

Снова, спасибо заранее.

-Rick

1 Ответ

5 голосов
/ 11 мая 2010

Вам не нужно использовать popover, если вы пытаетесь ввести числовое значение в UITextField / UITextView. Вы можете заменить клавиатуру на свой собственный вид. Вы просто делаете: [yourTextField setInputView: myInputView];

Вы можете посмотреть образец KeyboardAccessory от Apple. http://developer.apple.com/iphone/library/samplecode/KeyboardAccessory/Introduction/Intro.html В этом примере они предоставляют вспомогательное представление для представления ввода, но если вы измените код и установите inputView вместо inputViewAccessory, вы сможете сделать то, что вам нужно.

Если вы используете UITextView, вы можете добавить текст в том месте, где находится символ carret, с помощью следующего кода:

NSMutableString *text = [textView.text mutableCopy];
NSRange selectedRange = textView.selectedRange;
[text replaceCharactersInRange:selectedRange withString:@"\n"];
textView.text = text;

Если вы используете UITextField, кажется, что вы можете добавлять текст только в конце строки (не значит, чтобы получить положение carret).

...