У меня есть контроллер представления, в котором он имеет вид таблицы и TextView ниже таблицекак двигаться inputView выше клавиатуры при прокрутке таблицы
Когда я нажимаю на TextView появляется клавиатура и когда я нажимаю вне TextView клавиатура disappar Это работает отлично, но у меня есть одна проблема, которая возникает, когда я Перетащите (прокрутите вниз) в виде таблицы. TextView не перемещается вниз с клавиатуры, и я вижу черный фон за клавиатурой, как показано на рисунке ниже.
Как решить эту проблему в Swift
Update: Это мой текущий код, наблюдать за keyboardFrameChanges
func keyboardFrameChanged(notification: NSNotification) {
let dict = NSDictionary(dictionary: notification.userInfo!)
let keyboardValue = dict.objectForKey(UIKeyboardFrameEndUserInfoKey) as! NSValue
let bottomDistance = mainScreenSize().height - keyboardValue.CGRectValue().origin.y
let duration = Double(dict.objectForKey(UIKeyboardAnimationDurationUserInfoKey) as! NSNumber)
UIView.animateWithDuration(duration, animations: {
self.inputViewConstraint!.constant = -bottomDistance
self.view.layoutIfNeeded()
}, completion: {
(value: Bool) in
self.chatTableView.scrollToBottom(animation: true)
})
}
Update 2: я нашел решение, изменив keyboardDismissMode от Интерактивный до OnDrag
chatTableView.keyboardDismissMode = UIScrollViewKeyboardDismissMode.OnDrag
Это переместит клавиатуры и TextView немедленно вниз, как только это наблюдать любое движение сопротивления в таблице, но как это сделать в режиме Interactive, как с точки зрения WhatsApp чат
Я очень начинаю стремительно, вы можете объяснить более подробно –