Invite users
In Sendbird Chat SwiftUI, you can invite users to a group channel through the InviteUserView
. The view displays a list of users who aren't in the channel and invite them. Unless you have a specific list of users you selected, all users who are using your chat service is displayed in the user list by default.
Note: If you set the starting point of your chat service to be the channel list, group or open channel, channel settings or member list, you can seamlessly guide your users to the invite users view.
Initialize
You can start building an invite users view through the InviteUserView
. Use the init(channelURL:users:)
initializer to create the instance and display the view as shown below.
Init parameters
Parameter | Type | Required |
---|---|---|
channelURL | String | o |
users | [SBUUser] | x |
Customization
Sendbird Chat SwiftUI provides a View customization
and DestinationViewBuilder
.
- View customization: Our SwiftUI SDK allows you to selectively customize view elements. To learn more about the customization and our SwiftUI is designed, see the customization guide.
- DestinationViewBuilder: Use DestinationViewBuilder to customize the destination views that are navigatable from the group channel view.
Note : Visit our Github Sample to see the custom sample implementation for each item.
Partial customization
You can easily customize a specific part of a View
, which particularly comes in handy when changing only a certain area in the View
.
To do so, use the View Builders that Sendbird has predefined and its a ViewConfig
. The ViewConfig
contains the data needed to render the view and its parameters can be found in the table below.
Parameter
Parameter | Type | View items |
---|---|---|
headerItem | InviteUserType.HeaderItem | leftView |
listItem | InviteUserType.ListItem | rowView |
list | Closure | - |
The following code demonstrates how to replace the view items using headerItem
. All other {Component}Item
s can be used in the same way.
Note : When you customize a parent view, customizations in the child views will not be applied. For example, if you customize the
titleView
in theheaderItem
, the customizations of thecoverImage
ortitleLabel
in the lower view items will not be applied.
Full customization
You can also customize the entire view area as desired. You simply need to return a SwiftUI View in the closure. The ViewConfig
contains the data needed to render the view. Its parameters can be found in the table below.
Parameter
Parameter | Type | View builders |
---|---|---|
list | (ViewConfig) -> some View | - |
The following code demonstrates how to replace the entire list area using the list
parameter.
Note : When you customize a parent view, customizations in the child views will not be applied. For example, if you customize the entire area through the
list
, the customizations set in thelistItem
will not be applied.
DestinationViewBuilder
This screen has no DestinationViewBuilder because there's no navigational elements, such as buttons or links to other screens.