功能简介
主播开播页主要是指主播在开始直播之后,实现观众连麦 、主播连线、主播 PK、直播间信息、观众列表、礼物显示、弹幕显示等功能。本文将介绍如何在 10 分钟之内完成主播开播页的接入工作。
主播直播中 | 主播连麦中 |
![]() |
|
布局样式
布局类型 | 布局类型码 | 布局样式 |
动态宫格布局 | 600 | ![]() |
浮动小窗布局 | 601 | ![]() |
固定宫格布局 | 800 | ![]() |
固定小窗布局 | 801 | ![]() |
前提条件
功能接入
1. 创建主播准备页视图并初始化。
选择布局:如果要选择其他布局开播,需设置 liveInfo.seatLayoutTemplateId,具体代码示例及取值说明如下:
val anchorView = AnchorView(context)val liveInfo = LiveInfo()liveInfo.roomInfo = TUIRoomDefine.RoomInfo();liveInfo.roomInfo.roomId = "1236666"liveInfo.roomInfo.name = anchorPrepareView?.state?.roomName?.getValue()liveInfo.isPublicVisible = anchorPrepareView?.state?.liveMode?.getValue() == LiveStreamPrivacyStatus.PUBLICliveInfo.coverUrl = anchorPrepareView?.state?.coverURL?.getValue()// 选择不同布局。600表示动态宫格布局,为默认值。如需选择其他布局,具体取值见下列说明liveInfo.seatLayoutTemplateId = 600anchorView.init(liveInfo, anchorPrepareView?.coreView, AnchorViewDefine.RoomBehavior.CREATE_ROOM);
mAnchorView = new AnchorView(this);TUILiveListManager.LiveInfo liveInfo = new TUILiveListManager.LiveInfo();liveInfo.roomInfo = new TUIRoomDefine.RoomInfo();liveInfo.roomInfo.roomId = "1236666";liveInfo.roomInfo.name = mAnchorPrepareView.getState().roomName.getValue();liveInfo.isPublicVisible = mAnchorPrepareView.getState().liveMode.getValue() == AnchorPrepareViewDefine.LiveStreamPrivacyStatus.PUBLIC;liveInfo.coverUrl = mAnchorPrepareView.getState().coverURL.getValue();// 选择不同布局。600表示动态宫格布局,为默认值。如需选择其他布局,具体取值见下列说明liveInfo.seatLayoutTemplateId = 600mAnchorView.init(liveInfo, mAnchorPrepareView.getCoreView(), AnchorViewDefine.RoomBehavior.CREATE_ROOM);
参数 | 说明 |
seatLayoutTemplateId | 布局类型。 600: 动态宫格布局,默认值。 601: 浮动小窗布局。 800: 固定宫格布局。 801: 固定小窗布局。 |
2. 将主播开播页加载到 Activity 中。
setContentView(anchorView)
setContentView(mAnchorView);
3. 监听开始直播按钮点击事件。
// 在您的 Activity 中实现 AnchorViewDefine.AnchorViewListener 接口,并重写下面两个方法。// 点击结束直播按钮回调override fun onEndLiving(state: AnchorViewDefine.AnchorState?) {}// 点击悬浮窗按钮回调override fun onClickFloatWindow() {}// 给主播开播页视图添加监听器。anchorPrepareView.addAnchorViewListener(this)
// 在您的 Activity 中实现 AnchorViewDefine.AnchorViewListener 接口,并重写下面两个方法。// 点击结束直播按钮回调@Overridepublic void onEndLiving(AnchorViewDefine.AnchorState state) {}// 点击悬浮窗按钮回调@Overridepublic void onClickFloatWindow() {}// 给主播开播页视图添加监听器。mAnchorPrepareView.addAnchorViewListener(this);
功能定制
隐藏主播页顶部操作区
anchorView.disableHeaderLiveData(true)
mAnchorView.disableHeaderLiveData(true);
隐藏顶部操作区中的观众列表功能
anchorView.disableHeaderVisitorCnt(true)
mAnchorView.disableHeaderVisitorCnt(true);
隐藏底部操作区的连麦功能
anchorView.disableFooterCoGuest(true)
mAnchorView.disableFooterCoGuest(true);
隐藏底部操作区的连线功能
anchorView.disableFooterCoHost(true)
mAnchorView.disableFooterCoHost(true);
隐藏底部操作区的 PK 功能
anchorView.disableFooterBattle(true)
mAnchorView.disableFooterBattle(true);
隐藏更多设置面板中的音效功能
anchorView.disableFooterSoundEffect(true)
mAnchorView.disableFooterSoundEffect(true);