3_3-云课堂场景-PPT
1功能概述
PPT功能是将讲师端当前正在操作的PPT或者文档显示为一个小的悬浮窗的功能。
由于PPT是嵌入在悬浮窗中显示的,因此该模块将悬浮窗和PPT分开为两个接口,一个接口代表的是嵌入了PPT的悬浮窗,一个接口是PPT。
2 使用演示
//初始化
IPLVLCFloatingPPTLayout floatingPPTLayout=findViewById(R.id.plvlc_ppt_floating_ppt_layout);
//设置悬浮窗点击监听器
floatingPPTLayout.setOnFloatingViewClickListener();
//设置关闭悬浮窗的点击监听器
floatingPPTLayout.setOnClickCloseListener();
//设置直播PPT事件监听器
floatingPPTLayout.getPPTView().initLivePPT();
//设置回放PPT事件监听
floatingPPTLayout.getPPTView().initPlaybackPPT();
//销毁
floatingPPTLayout.destroy();详细的调用代码以及和其他模块的通信,请参考PLVLCCloudClassActivity类中的代码调用。
3 接口介绍
3.1 IPLVLCFloatingPPTLayout
IPLVLCFloatingPPTLayout是云课堂场景下定义的PPT悬浮窗布局,定义了:
外部直接调用的方法
需要外部响应的事件监听器
3.2 IPLVLCPPTView
云课堂场景下,针对 PPT布局 进行封装的interface,定义了:
外部直接调用的方法
需要外部响应的事件监听器
4 实现介绍
IPLVLCFloatingPPTLayout的实现类是:PLVLCFloatingPPTLayout。
IPLVLCPPTView的实现类是:PLVLCPPTView。
4.1 PLVLCFloatingPPTLayout
PLVLCFloatingPPTLayout是一个全屏大小的布局,由他的子View,PLVTouchFloatingView作为真正的悬浮窗控件响应悬浮窗的拖动事件。
4.1.2 初始化View
可以在初始化中设置悬浮窗的横屏和竖屏各自的初始化位置,也可以设置在横屏和竖屏下,悬浮窗的大小。
4.1.2 初始化数据
悬浮窗内部使用了MVP模式,需要初始化Presenter。
而悬浮窗实现的View层接口是:
用于更新悬浮窗上讲师的信息。
4.2 PLVLCPPTView
PLVLCPPTView是PPT的实现。有如下几点需要注意:
它是对SDK中的类:PolyvPPTWebView,的一层业务封装。
它使用mvp模式来处理服务端数据的收发等逻辑。
由于PPT既可以直播,也可以在回放中使用,因此它的接口分为live、playback、common3组,具体可以直接看接口注释。
4.2.1 初始化View
4.2.2 初始化数据
PPT内部使用了MVP模式,需要初始化Presenter。
而PPT实现的View层接口是:
Last updated
Was this helpful?