2015-05-24 7 views
0

Я хочу включить ключ возврата клавиатуры UITextField, если (и только если) пользователь вводит действительный адрес электронной почты.Программный код Gray out return

Я пробовал a solution that dates back from 2009, который использует закрытый метод setReturnKeyEnabled. К сожалению, этот метод не кажется, существует больше:

Нет известного метода экземпляра для выбора «не setReturnKeyEnabled:»

Как можно программно включить и отключить клавишу возврата на клавиатуре?

+0

вы должны сказать это в своем вопросе, если хотите, чтобы ключ возврата был выделен серым цветом. потому что «отключить» может означать много вещей. Если ключ возврата не работает, он также отключается, я могу спорить. И, похоже, не представляется возможным серовать ключ возврата, по крайней мере, не с документальными методами. – Michael

+0

Я редактировал заголовок, спасибо. – Randomblue

ответ

-1

Вы действительно не включить или отключить ключ возврата. Вместо этого, если пользователь нажимает клавишу возврата, вызывается метод делегата -textFieldShouldReturn:. Если вы хотите скрыть клавиатуру в этом случае, вы должны вызвать -resignFirstResponder в текстовом поле в методе делегата.

https://developer.apple.com/library/ios/documentation/UIKit/Reference/UITextFieldDelegate_Protocol/index.html

+0

Я хочу, чтобы ключ возврата был выделен серым цветом. Это не работает с 'textFieldShouldReturn'. – Randomblue

+0

Я никогда не видел greyed out return key на UIKeyboard – Michael

+0

Посмотрите на 'enableReturnKeyAutomatically = NO', когда текстовое поле пуст. – Randomblue

0
  1. Установите делегат на вашем UITextField
  2. Для экземпляра делегата (тот вы только что установили, что соответствует UITextFieldDelegate), реализации: - (BOOL)textFieldShouldReturn:(UITextField *)textField.

Есть другие обратные вызовы в делегатом, такие как textField:shouldChangeCharactersInRange:replacementString:, которые могут представлять интерес для вас, если вы пытаетесь сохранить TextField всегда «правильно» и не позволять пользователю продолжать печатать после TextField имеет стать ошибочным по отношению к предпочитаемому форматированию/валидации. Определенно стоит взглянуть на документацию для UITextFieldDelegate для всех ваших возможных обратных вызовов.

+0

Ahhhh, вождение вниз по голосованию - позаботиться о том, чтобы разъяснить нам вашу проблему, проголосователю? – greymouser

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