2014-09-23 2 views
0

Я немного нового в создании проектов xcode, поэтому у меня есть программа, которую мне нужно нажать TextField, чтобы вставить некоторые значения, но я не хочу делать это с помощью родной клавиатуры, но только с кнопками, которые я буду создайте, как калькулятор.Как я могу отключить в проекте Xcode, что клавиатура появляется, когда я касаюсь TextField?

Я уже изучал некоторые определения, и я не могу найти этот вариант!

Так что я хотел бы знать, как отключить эту опцию на клавиатуре!

+2

Проверить 'inputView' свойство' UITextField'. – Desdenova

+0

@Desdenova Я просто проверяю инспектора собственности/аттрибута, и я нахожу много типов клавиатуры, включая только цифры! спасибо за ответ, была хорошая помощь! –

+1

Я имел в виду это: https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITextField_Class/index.html#//apple_ref/occ/instp/UITextField/inputView – Desdenova

ответ

3

Используйте эту функцию в своем viewController.

- (BOOL)textFieldShouldBeginEditing:(UITextField *)textField 
{ 
    return NO; //hide keyboard 
} 
+0

Спасибо, что это очень помогает! –

0

Если все, что вы хотите сделать, это отключить клавиатуру, появляющуюся при выборе текстового поля, вы можете установить для свойства editable значение false. Это, однако, не позволит пользователю редактировать текстовое поле, если вы не обновите его программно.

Если все, что вы ищете номер клавиатуры, вы можете установить keyboardType свойства UIKeyboardType.NumberPad

Если вы хотите сделать свои собственные клавиатуры, у вас есть два основных варианта:

Один из вариантов для использования пользовательского ввода. Существует свойство на UITextField под названием inputView, которое позволяет указать пользовательский вид, который будет использоваться вместо клавиатуры. Это работает, только если вы хотите отобразить представление снизу, как клавиатура.

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

+0

но я хотите выбрать текстовое поле для записи! –

+0

@BrunoRodrigues Я обновил свой ответ другим вариантом. Но исходный вариант все еще показывает, что вы выбрали текстовое поле для записи. Там просто прозрачная кнопка над ней. – drewag

+0

Я не понимаю, почему это имеет downvotes, кажется правильным ответом на то, что было задано +1 – Popeye

0

Использование Swift, попытайтесь поместить это в вашем контроллере представления:

func textFieldShouldBeginEditing(textField: UITextField) -> Bool { 
    return false 
} 
+0

Это не работает. – Hope

Смежные вопросы