开播前预览 | 连麦互动 | 观众互动 | 直播间管理 |
![]() | ![]() | ![]() | ![]() |
AnchorPrepareView组件已内置了摄像头预览、音效设置、布局设置、以及其它功能设置,您需创建并加载主播开播页视图,具体示例代码如下:// YourAnchorPrepareViewController 代表您加载主播开播页的视图控制器class YourAnchorPrepareViewController: UIViewController {// 1. 声明创建 LiveCoreView 实例private let coreView = LiveCoreView()// 2. 懒加载 AnchorPrepareViewprivate lazy var prepareView: AnchorPrepareView = {// 3. AnchorPrepareView 初始化时传入 coreView 实例对象let view = AnchorPrepareView(coreView: coreView)return view}()public override func viewDidLoad() {super.viewDidLoad()// 4. 将 prepareView 添加到视图上view.addSubview(prepareView)prepareView.snp.makeConstraints { make inmake.edges.equalToSuperview()}}}
AnchorView 组件已内置了音视频推流、观众连麦、直播互动、直播管理等功能,您只需创建并加载主AnchorView ,具体示例代码如下:// YourAnchorPrepareViewController 代表您加载主播开播页的视图控制器class YourAnchorViewController: UIViewController {// 直播间信息private let liveInfo: LiveInfo// 核心 view 组件private let coreView: LiveCoreView// 进房行为:// RoomBehavior.createRoom: 主播创建房间// RoomBehavior.enterRoom: 观众进入房间private let behavior: RoomBehavior// 1. 声明 anchorView 实例private let anchorView: AnchorView// 2. 新增便利构造函数完成实例初始化public init(liveInfo: LiveInfo, coreView: LiveCoreView? = nil) {self.liveInfo = liveInfoself.behavior = behaviorif let coreView = coreView {self.coreView = coreView} else {self.coreView = LiveCoreView()}// 3. 实例化主播开播页self.anchorView = AnchorView(liveInfo: liveInfo, coreView: self.coreView, behavior: .createRoom)super.init(nibName: nil, bundle: nil)}public override func viewDidLoad() {super.viewDidLoad()// 4. 将 anchorView 添加到视图上view.addSubview(anchorView)anchorView.snp.makeConstraints { make inmake.edges.equalToSuperview()}}}
// 在步骤1 AnchorPrepareView 初始化时设置代理class YourAnchorPrepareViewController: UIViewController {private lazy var prepareView: AnchorPrepareView = {let view = AnchorPrepareView(coreView: coreView)// 1. 设置回调代理prepareView.view.delegate = selfreturn view}()}// 2. 实现 AnchorPrepareViewDelegate 回调代理extension YourAnchorPrepareViewController : AnchorPrepareViewDelegate {// 响应开播按钮点击事件// - state: PrepareState 封装了主播开播页的摄像头、音效等功能设置,您只需按以下示例代码设置即可public func onClickStartButton(state: PrepareState) {// 4. 跳转到主播开播页// 4.1. 初始化直播信息var liveInfo = LiveInfo()// 您只需要设置 roomId 即可liveInfo.roomId = roomIdliveInfo.name = state.roomNameliveInfo.coverUrl = state.coverUrlliveInfo.isPublicVisible = state.privacyMode == .publicliveInfo.seatLayoutTemplateId = state.templateMode.rawValueliveInfo.backgroundUrl = state.coverUrlliveInfo.pkTemplateId = state.pkTemplateMode.rawValue// 4.2. 实例化您的直播开播视图控制器let anchorVC = YourAnchorViewController(liveInfo: liveInfo, coreView: coreView)anchorVC.modalPresentationStyle = .fullScreen// 4.3. 跳转到您的直播开播视图控制器present(anchorVC, animated: false)}// 响应返回按钮点击事件public func onClickBackButton() {if let nav = navigationController {nav.popViewController(animated: true)} else {dismiss(animated: true)}}}

名称 | 动态宫格布局 | 浮动小窗布局 | 固定宫格布局 | 固定小窗布局 |
模板 ID | 600 | 601 | 800 | 801 |
描述 | 默认布局,可根据连麦人数动态调整宫格大小。 | 连麦嘉宾以浮动小窗形式显示。 | 连麦人数固定,每个嘉宾占据一个固定宫格。 | 连麦人数固定,嘉宾以固定小窗形式显示。 |
预览 | ![]() | ![]() | ![]() | ![]() |
// YourAnchorPrepareViewController 代表您加载主播开播页的视图控制器class YourAnchorPrepareViewController: UIViewController {private let coreView = LiveCoreView()private lazy var prepareView: AnchorPrepareView = {let view = AnchorPrepareView(coreView: coreView)view.delegate = selfreturn view}()public override func viewDidLoad() {super.viewDidLoad()// 1. 将 prepareView 添加到视图上view.addSubview(prepareView)prepareView.snp.makeConstraints { make inmake.edges.equalToSuperview()}// 2. 自定义功能区 - 示例:隐藏美颜功能prepareView.disableMenuBeautyButton(true)}}
隐藏整个功能区 | 隐藏美颜按钮 | 隐藏音效按钮 | 隐藏摄像头切换按钮 |
disableFeatureMenu(true) | disableMenuBeautyBtn(true) | disableMenuAudioEffectBtn(true) | disableMenuSwitchCameraBtn(true) |
![]() | ![]() | ![]() | ![]() |
// YourAnchorPrepareViewController 代表您加载主播开播页的视图控制器class YourAnchorViewController: UIViewController {// 声明 anchorView 实例private let anchorView: AnchorViewpublic override func viewDidLoad() {super.viewDidLoad()// 将 anchorView 添加到视图上view.addSubview(anchorView)anchorView.snp.makeConstraints { make inmake.edges.equalToSuperview()}// 隐藏主播连线功能anchorView.disableFooterCoHost(true)}}
隐藏顶部观众列表功能 | 隐藏底部观众连麦功能 | 隐藏底部主播连线功能 | 隐藏底部主播 PK 功能 |
disableHeaderVisitorCnt(true) | disableFooterCoGuest(true) | disableFooterCoHost(true) | disableFooterBattle(true) |
![]() | ![]() | ![]() | ![]() |

TUILiveKit.xcassets 管理 UI 所需的图片资源,您可以借助 Xcode 图形化工具快速修改自定义界面所需的图标。

文档反馈