2012-01-04 4 views
0

Я пишу приложение iOS MonoTouch. Я прочитал много сообщений о ResignFirstResponder, и я использую это.MonoTouch Dismiss Keyboard (вид)

Мое приложение - типичное приложение для просмотра таблиц. Я сделал собственный собственный вид ячейки таблицы. Элементы UITextField, которые приводят к появлению цифровой клавиатуры, в первую очередь, находятся в пользовательской ячейке таблицы.

В настоящее время у меня это так, что если вы коснетесь фона ячейки, я вызываю ResignFirstResponder во все текстовые поля. Это, похоже, работает, но не интуитивно. У меня появился новый бета-тестер прошлой ночью, и он нажал на одно из текстовых полей, и клавиатура подошла, и он потерялся относительно того, как избавиться от него. После того, как я сказал ему просто коснуться фона, теперь он в порядке, но, очевидно, я хочу, чтобы решение было очевидно и не требует, чтобы я рассказывал всем, как это работает.

Я прочитал одно сообщение о том, как добавить кнопку DONE на клавиатуру, но это выглядело как общий взлом и даже сломалось, когда вышел 3.2.1, и я не хочу беспокоиться о нарушении моего приложения когда выйдет новая ОС.

Предложения?

ответ

1

Я бы сохранил фоновый щелчок-> ResignFirstResponder, который у вас уже есть, но добавьте его.

Любопытно, какую кнопку вы установили в правом нижнем углу клавиатуры? Существуют опции для отображения кнопок «Готово», «Поиск», «Вперед», «Далее» и т.д., которые можно настроить на ResignFirstResponder. Выберите кнопку, которая имеет смысл в вашей ситуации.

Вы можете подключить нижнюю правую кнопку, установив обратный вызов UITextField.ShouldReturn и вызов ResignFirstResponder. Вы можете просто вернуть false (это возвращаемое значение для разрешения разрывов строк в вашем UITextField).

Обнаружили пример here Подключиться ShouldReturn.

+0

Я попробую. Я не знал, что вы можете установить эту кнопку. Я прочитал о ShouldReturn, но не понял, что вы можете изменить, для чего была кнопка. В настоящее время он установлен как backspace или delete (назовите его либо). – user856232

+0

Это хороший ответ, но не полный ответ. Он работает для альфа-клавиатуры, цифр и знаков препинания. Он НЕ работает для клавиатуры с клавиатурой. Клавиатура Num Pad не имеет места для кнопки «Готово». Есть ли у вас другая идея? – user856232

+0

Извините, не понял, что это было не на цифровой клавиатуре. Существует InputAccessoryView для прикрепления собственных элементов управления к верхней части клавиатуры, аналогично тому, что делает сафари. Посмотреть это сообщение: http://stackoverflow.com/questions/4175212/how-to-add-a-uitoolbar-on-top-of-uikeyboard-using-monotouch – jonathanpeppers

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