如果您想在 messagesCollectionView 上方有某种浮动视图,那么您可以将其作为子视图添加到MessagesViewControler
'sview
中,只需确保在调用后super.viewDidLoad()
执行此操作,因为 MessageKit 将 collectionView 添加为子视图,所以如果您在此之前添加它,那么您的视图将位于 collectionView 后面并且不会出现。为了防止单元格与您的视图重叠,messagesCollectionView.contentInset
如果您的视图浮动在那里,您可以使用属性将填充添加到顶部或底部,以便用户仍然可以滚动到所有消息。像这样的东西:
override func viewDidLoad() {
super.viewDidLoad()
let subview = UIView()
view.addSubview(subview)
// Either add constraints or set the frame manually
// ...
// Set the contentInset if you want to prevent the messages from overlapping your view
messagesCollectionView.contentInset.top = 10 // For example, if your view was stickied to the top and was height 10px
}
您可以采用的另一条路线是拥有一个父视图控制器,您可以在其中将MessagesViewController
作为子 VC 添加到父级,然后按照您的需要调整和布局 messagesCollectionView。您可以在 MessageKit 示例应用程序的 MessageContainerController 类中看到这样的示例:https ://github.com/MessageKit/MessageKit/blob/master/Example/Sources/View%20Controllers/MessageContainerController.swift