Изменение ограничения WKWebView из-за проблемы с клавиатурой

#swift #keyboard #autolayout #wkwebview

#быстрое #клавиатура #автоматическое описание #wkwebview

Вопрос:

Я сделал два вида сверху / снизу. И я добавляю WKWebView сверху.

 @objc func keyboardWillShow(notification: Notification)
{
    menuHeightConstraint.constant = 0
    self.view.layoutIfNeeded()
}

@objc func keyboardWillHide(notification: Notification)
{
    menuHeightConstraint.constant = 50
    self.view.layoutIfNeeded()
}
  

При отображении клавиатуры я сделал, чтобы скрыть вид снизу.

Я просто загружаю ссылку на Twitter в webview

 let request = URLRequest(url: URL(string: "https://twitter.com/intent/tweet?text=Hello world")!)
webView!.load(request)
  

Когда отобразится веб-вход в Twitter и клавиатура, нажмите клавишу «Готово», чтобы скрыть клавиатуру.

Клавиатура снова отобразится.

Этого не произойдет, если ограничения не будут изменены.

Пример источника https://github.com/NoviceGom/WebViewSample

Может ли кто-нибудь указать на неправильную часть?

Ответ №1:

  @objc func keyboardWillHide(notification: Notification)
  {
    view.endEditing(true) // this line will work for you
    menuHeightConstraint.constant = 50
    self.view.layoutIfNeeded()
 }
  

добавьте приведенную выше строку, и она будет работать для вас. приведенная выше строка используется для отключения клавиатуры.

Спасибо