Participant List View
Overview
The LMChatParticipantListView is a view that displays a list of chat participants. It provides a table view to show participant information and supports delegate methods for handling user interactions and pagination.
File Location:
LMChatParticipantListView.swift
Functionality
Protocols
LMParticipantListViewDelegate
Defines methods that are triggered from tableview and are implemented by the viewcontroller using it
didTapOnCell(indexPath: IndexPath): Called when a participant cell is tapped.loadMoreData(): Called when the table view needs to load more participants.
UI Components
containerView: A LMView that serves as the main container for the participant list.loadingView: An instance ofLMChatHomeFeedShimmerViewused as a loading indicator.tableView: A LMTableView that displays the list of participants.- Registered Cells: LMChatParticipantCell
Data Variables
cellHeight: A constant CGFloat value representing the height of each cell in the table view.data: An array ofLMChatParticipantCell.ContentModelobjects containing participant information.delegate: A weak reference to an object conforming toLMParticipantListViewDelegate.
Methods
reloadList(): Refreshes the table view and updates the background view based on data availability.
Customization
CustomParticipantListView.swift
class CustomParticipantListView: LMChatParticipantListView {
override func setupAppearance() {
super.setupAppearance()
tableView.backgroundColor = .lightGray
}
}
AppDelegate.swift
func application(_ application: UIApplication, willFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]? = nil) -> Bool {
LMUIComponents.shared.participantListView = CustomParticipantListView.self
// ...
return true
}