У меня есть текстовое поле, которое иногда будет принимать ввод с клавиатуры, а иногда из всплывающего окна. Когда popover является методом ввода и пользователь закрывает popover (нажав или выбрав значение), я вызываю nameText.resignFirstResponder()
. Затем всплывающее окно снова откроется.
У меня есть несколько различных сегментов, подключенных к контроллеру представления, это часть моей подготовки к переходу.
if let destination = segue.destination as? ObserversPopover {
destination.delegate = self // A custom delegate for the ObserversPopover class.
destination.popoverPresentationController?.delegate = self
}
Этот раздел будет вызван resignFirstReponder
, но только когда я закрываю его в первый раз. В общем, я должен выбрать / закрыть поповер дважды. Причина, по которой я хочу уволить респондента, заключается в том, что у меня нет других редактируемых полей на экране, и пользователь должен иметь возможность изменить свой выбор. Если текстовое поле все еще выделено, они не могут открыть поповер.
Как я могу открыть поповер только один раз?