Skip to main content

Chat Participant View

Overview

The LMChatParticipantView is used to display information about a participant. It presents the participant's profile image, name, designation, custom title, and pending status.

UI Components

  • containerView: The main container for the participant view.
  • subviewContainer: A container with rounded corners for the participant's information.
  • participantContainerStackView: Horizontally arranges the profile image and text information.
  • participantNameAndDesignationContainerStackView: Vertically stacks the name and designation information.
  • participantNameContainerStackView: Horizontally arranges the name and custom title.
  • participantDesignationContainerStackView: Contains the designation label.
  • nameLabel: Displays the participant's name.
  • designationLabel: Shows the participant's designation or role.
  • customTitle: Presents any custom title assigned to the participant.
  • pendingTextLabel: Indicates if the participant's status is pending.
  • profileImageView: Displays the participant's profile image.
  • moreActionsContainerStackView: Contains action buttons for participant management.
  • rejectImageView: An icon for rejecting a participant (if applicable).
  • approveImageView: An icon for approving a participant (if applicable).
  • moreOptionsImageView: An icon for accessing more options related to the participant.

Methods

  • setData(_:): Populates the view with data.

Customization

CustomChatParticipantView.swift
class CustomChatParticipantView: LMChatParticipantView {
override func setupAppearance() {
super.setupAppearance()
subviewContainer.backgroundColor = .lightGray
}

override func setData(_ data: ContentModel) {
super.setData(data)
// Add custom data presentation logic
}
}
AppDelegate.swift
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
LMUIComponents.shared.participantView = CustomChatParticipantView.self
// ...
return true
}