2017-02-14 3 views
0

У меня возникла странная проблема с обработкой UITextField s и keyboard видимости.IOS swift 3 crash для редактирования и ответа UITextFields

Цель моего текущего контроллера - позволить пользователю редактировать некоторые данные, а также читать некоторые другие.

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

Я сделал некоторые исследования, чтобы найти рабочий способ сделать так, как:

  • self.view.endEditing(true)
  • currentTextField.resignFirstResponder()
  • даже создать «скрытый UITextField» и попросить его becomeFirstResponder, когда процесс осуществляется

Ни один из этих попыток не закончился скрытой клавиатурой, но закончился Optional value сбой

Я использую Swift 3 и XCode 8.2.1 прямо сейчас

Если кто-то имеет ключ, спасибо по заранее

+0

Вы можете показать код. –

+0

Введите код. Используете ли вы необязательное связывание, чтобы избежать подобных сбоев? – KrishnaCA

ответ

0

Ваше мнение контроллер должен подкласс UITextFieldDelegate. Реализуйте функции, определенные этим протоколом, и вы должны иметь необходимый элемент управления. И не забудьте установить myTextfield.delegate = self - или любой объект реализует протокол.

Примером может служить «DidEndEditing» и тому подобное. Если вы уже это сделали, предоставьте код для дальнейшей диагностики вашей проблемы.

0

Спасибо за ваши ответы,

Я реализовал UITextFieldDelegate от начать код, и все мои TextField s использовать editingDidBegin и editingDidEnd и авария произошла, когда я назвал код ниже от результата АНИ вызова

self.view.endEditing(true) 

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

0

self.view.endEditing (правда)

Эта линия не должна врезаться. Он просто уходит с ответа на запрос от UITextfield. Не могли бы вы дать мне подробную информацию о вашем крахе? Что записывается в консоль журнала при сбое. насколько я знаю self.view.endEditing (true) определенно выполнит ваши требования.

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