[Added] .custom case to MessageStyle to customize via closure

This commit is contained in:
Steven Deutsch
2017-09-25 15:51:56 -05:00
parent d5e16c2926
commit c93a5e0dff
3 changed files with 10 additions and 2 deletions
@@ -222,6 +222,8 @@ extension ConversationViewController: MessagesDisplayDelegate {
func messageStyle(for message: MessageType, at indexPath: IndexPath, in messagesCollectionView: MessagesCollectionView) -> MessageStyle {
let corner: MessageStyle.TailCorner = isFromCurrentSender(message: message) ? .bottomRight : .bottomLeft
return .bubbleTail(corner, .curved)
// let configurationClosure = { (view: MessageContainerView) in}
// return .custom(configurationClosure)
}
func messageFooterView(for message: MessageType, at indexPath: IndexPath, in messagesCollectionView: MessagesCollectionView) -> MessageFooterView? {
+5
View File
@@ -69,6 +69,11 @@ open class MessageContainerView: UIImageView {
mask = nil
image = nil
tintColor = nil
case .custom(let configurationClosure):
mask = nil
image = nil
tintColor = nil
configurationClosure(self)
}
}
+3 -2
View File
@@ -69,6 +69,7 @@ public enum MessageStyle {
case bubbleOutline(UIColor)
case bubbleTail(TailCorner, TailStyle)
case bubbleTailOutline(UIColor, TailCorner, TailStyle)
case custom((MessageContainerView) -> Void)
// MARK: - Public
@@ -79,7 +80,7 @@ public enum MessageStyle {
guard var image = UIImage(contentsOfFile: path) else { return nil }
switch self {
case .none:
case .none, .custom:
return nil
case .bubble, .bubbleOutline:
break
@@ -103,7 +104,7 @@ public enum MessageStyle {
return "bubble_full" + tailStyle.imageNameSuffix
case .bubbleTailOutline(_, _, let tailStyle):
return "bubble_outlined" + tailStyle.imageNameSuffix
case .none:
case .none, .custom:
return nil
}
}