ChatThreadHeaderView
This component is responsible to display the information in the header of a thread. By default, it is rendered in the navigationItem.titleView
of the ChatThreadVC
.
Customization
You can swap the built-in component with your own by setting Components.default.threadHeaderView
to your own view type.
Components.default.threadHeaderView = MyChatThreadHeaderView.self
note
You can find more information on how the components configuration works here.
Properties
channelController
Controller for observing data changes within the channel.
open var channelController: ChatChannelController?
currentUserId
The user id of the current logged in user.
open var currentUserId: UserId?
titleContainerView
A view that displays a title label and subtitle in a container stack view.
open private(set) lazy var titleContainerView: TitleContainerView = components
.titleContainerView.init()
.withoutAutoresizingMaskConstraints
titleText
The title text used to render the title label. By default it is "Thread Reply" label.
open var titleText: String?
subtitleText
The subtitle text used in the subtitle label. By default it is the channel name.
open var subtitleText: String?
Methods
setUp()
override open func setUp()
setUpLayout()
override open func setUpLayout()
updateContent()
override open func updateContent()
channelController(_:didUpdateChannel:)
open func channelController(
_ channelController: ChatChannelController,
didUpdateChannel channel: EntityChange<ChatChannel>
)
channelController(_:didChangeTypingUsers:)
open func channelController(
_ channelController: ChatChannelController,
didChangeTypingUsers typingUsers: Set<ChatUser>
)
channelController(_:didReceiveMemberEvent:)
open func channelController(
_ channelController: ChatChannelController,
didReceiveMemberEvent: MemberEvent
)
channelController(_:didUpdateMessages:)
open func channelController(
_ channelController: ChatChannelController,
didUpdateMessages changes: [ListChange<ChatMessage>]
)