Source code
private func prepareDelegates() {
messagesCollectionView.messagesDataSource = self
messagesCollectionView.messagesLayoutDelegate = self
messagesCollectionView.messagesDisplayDelegate = self
messagesCollectionView.messageCellDelegate = self
messageInputBar.delegate = self
}
private func prepareInputField() {
//
messageInputBar.sendButton.tintColor = UIColor(red: 69/255, green: 193/255, blue: 89/255, alpha: 1)
scrollsToBottomOnKeybordBeginsEditing = true // default false
maintainPositionOnKeyboardFrameChanged = true // default false
// Refresh
messagesCollectionView.addSubview(refreshControl)
refreshControl.addTarget(self, action: #selector(ChatViewController.observeMessages), for: .valueChanged)
// Customisation
defaultStyle()
}
func defaultStyle() {
let newMessageInputBar = MessageInputBar()
newMessageInputBar.sendButton.tintColor = UIColor(red: 69/255, green: 193/255, blue: 89/255, alpha: 1)
newMessageInputBar.delegate = self
messageInputBar = newMessageInputBar
reloadInputViews()
}
all these methods are called in viewdidload.
Do you use IQKeyboardManager ?
^ I have seen this before and IQKeyboardManager can be a reason. If not, please try MessageKit 2.0
Yes, that's correct.
It's due to IQKeyboardManager.
Thanks, @nathantannar4 @c941010623 for quick help.