PLVContainerWebViewBridge

Objective-C

@interface PLVContainerWebViewBridge : PLVSocketWebViewBridge

Swift

class PLVContainerWebViewBridge : PLVSocketWebViewBridge

Undocumented

  • PLVContainerWebViewBridge 代理

    Declaration

    Objective-C

    @property (nonatomic, weak) id<PLVContainerWebViewBridgeDelegate> _Nullable delegate;

    Swift

    weak var delegate: PLVContainerWebViewBridgeDelegate? { get set }
  • Deprecated

    已废弃,请使用父类initBridgeWithWebView:webViewDelegate:

    初始化方法

    Declaration

    Objective-C

    - (nonnull instancetype)initBridgeWithWebview:(nonnull WKWebView *)webView
                                  webviewDelegate:(nonnull id<WKNavigationDelegate>)
                                                      webViewDelegate;

    Swift

    init(bridgeWithWebview webView: WKWebView, webviewDelegate webViewDelegate: WKNavigationDelegate)

    Parameters

    webView

    webview对象

    webViewDelegate

    webview代理

通用方法

  • 切换教具

    Declaration

    Objective-C

    - (void)changeApplianceType:(PLVContainerApplianceType)type;

    Swift

    func change(_ type: PLVContainerApplianceType)

    Parameters

    type

    教具类型

  • 修改文本字体大小

    Declaration

    Objective-C

    - (void)changeFontSize:(NSUInteger)fontSize;

    Swift

    func changeFontSize(_ fontSize: UInt)

    Parameters

    fontSize

    字体大小

  • 修改线条宽度

    Declaration

    Objective-C

    - (void)changeLineWidth:(NSUInteger)width;

    Swift

    func changeLineWidth(_ width: UInt)

    Parameters

    width

    线条宽度

  • 修改笔触颜色

    Declaration

    Objective-C

    - (void)changeStrokeHexColor:(nonnull NSString *)hexColor;

    Swift

    func changeStrokeHexColor(_ hexColor: String)

    Parameters

    hexColor

    16进制颜色字符串

  • 执行清空画板操作

    Declaration

    Objective-C

    - (void)doClear;

    Swift

    func doClear()
  • 执行重做画板操作

    Declaration

    Objective-C

    - (void)doRedo;

    Swift

    func doRedo()
  • 执行撤回画板操作

    Declaration

    Objective-C

    - (void)doUndo;

    Swift

    func doUndo()
  • 执行删除画笔操作

    Declaration

    Objective-C

    - (void)doDelete;

    Swift

    func doDelete()
  • 完成编辑文字

    Note

    用于native完成文字输入后返回给webView

    Declaration

    Objective-C

    - (void)finishEditText:(nonnull NSString *)text;

    Swift

    func finishEditText(_ text: String)

    Parameters

    text

    文字

  • 取消编辑文字

    Declaration

    Objective-C

    - (void)cancelEditText;

    Swift

    func cancelEditText()
  • 授予画笔权限

    Note

    根据socket消息得知是否需要授予画笔权限

    Declaration

    Objective-C

    - (void)givePaintBrushAuth:(nonnull PLVContainerResponseCallback)callback;

    Swift

    func givePaintBrushAuth(_ callback: @escaping PLVContainerResponseCallback)

    Parameters

    callback

    js回调

  • 移除画笔权限

    Note

    根据socket消息得知是否需要移除画笔权限

    Declaration

    Objective-C

    - (void)removePaintBrushAuth:(nonnull PLVContainerResponseCallback)callback;

    Swift

    func removePaintBrushAuth(_ callback: @escaping PLVContainerResponseCallback)

    Parameters

    callback

    js回调

  • Deprecated

    已废弃,由父类PLVSocketWebViewBridge进行处理

    插入 socket 数据

    Note

    native 在接受以下socket消息时,需将消息转发给js: ‘onSliceID'、'onSliceDraw'、'onSliceOpen'、'onSliceClose'、'onSliceControl’

    Declaration

    Objective-C

    - (void)joinSocketData:(nonnull NSString *)socketData;

    Swift

    func joinSocketData(_ socketData: String)

    Parameters

    socketData

    socket原数据

  • 设为组长或移除组长

    Note

    根据socket消息得知是否需要设置为,触发后如果是组长,内部会自动授予画笔权限,无需另外发送 givePaintBrushAuth 到 webview 中

    Declaration

    Objective-C

    - (void)setOrRemoveGroupLeader:(BOOL)isLeader
                          callback:(nonnull PLVContainerResponseCallback)callback;

    Swift

    func setOrRemoveGroupLeader(_ isLeader: Bool, callback: @escaping PLVContainerResponseCallback)

    Parameters

    isLeader

    是否设为组长,YES:设为组长,NO:移除组长

    callback

    js回调

  • 切换房间,用于开始或结束分组讨论时切换房间

    Declaration

    Objective-C

    - (void)switchRoomWithAckData:(nonnull NSDictionary *)ackData
                     datacallback:(PLVContainerResponseCallback _Nullable)callback;

    Swift

    func switchRoom(withAckData ackData: [AnyHashable : Any], datacallback callback: PLVContainerResponseCallback? = nil)

    Parameters

    ackData

    leaveDiscuss、joinDiscuss 这两个Socket事件的Ack回调数据

    callback

    js回调

讲师、组长专属方法

  • 打开文档

    Note

    讲师、组长专属方法

    Declaration

    Objective-C

    - (void)openPptWithAutoId:(NSUInteger)autoId;

    Swift

    func openPpt(withAutoId autoId: UInt)

    Parameters

    autoId

    文档autoId

  • 关闭文档

    Note

    讲师、组长专属方法

    Declaration

    Objective-C

    - (void)closePptWithAutoId:(NSUInteger)autoId;

    Swift

    func closePpt(withAutoId autoId: UInt)

    Parameters

    autoId

    文档autoId

  • 操作容器(ppt、word各类文档统称)

    Note

    讲师、组长专属方法

    Declaration

    Objective-C

    - (void)operateContainerWithContainerId:(nonnull NSString *)containerId
                                      close:(BOOL)close;

    Swift

    func operateContainer(withContainerId containerId: String, close: Bool)

    Parameters

    containerId

    容器内容Id

    close

    关闭、打开

  • 重置画板缩放

    Note

    讲师、组长专属方法

    Declaration

    Objective-C

    - (void)resetZoom;

    Swift

    func resetZoom()

通用方法注册

  • Deprecated

    已废弃,由父类PLVSocketWebViewBridge进行处理

    注册'sendSocketData’ 方法 用于把 webView 接收到的操作画板产生的数据,通过 socket 发送给聊天室

    Declaration

    Objective-C

    - (void)registerSendSocketData;

    Swift

    func registerSendSocketData()
  • 注册'startEditText’ 方法 用于接收 webView 开始输入文字 回调

    Declaration

    Objective-C

    - (void)registerStartEditText;

    Swift

    func registerStartEditText()
  • 注册'toggleOperationStatus’ 方法 用于接收 webView 刷新画笔工具是否可用状态回调

    Declaration

    Objective-C

    - (void)registerToggleOperationStatus;

    Swift

    func registerToggleOperationStatus()

讲师、组长专属方法注册

  • 注册'refreshMinimizeContainerData’ 方法

    Note

    讲师、组长专属方法 用与接收 webView 刷新最小化的容器数据

    Declaration

    Objective-C

    - (void)registerRefreshMinimizeContainerData;

    Swift

    func registerRefreshMinimizeContainerData()
  • 注册'refreshPptContainerTotal’ 方法

    Note

    讲师、组长专属方法 用与接收 webView 刷新打开的 PPT 容器数量

    Declaration

    Objective-C

    - (void)registerRefreshPptContainerTotal;

    Swift

    func registerRefreshPptContainerTotal()
  • 注册'zoomPercenChange’ 方法

    Note

    讲师、组长专属方法 用与接收 webView 回调当前 画板缩放百分比

    Declaration

    Objective-C

    - (void)registerZoomPercenChange;

    Swift

    func registerZoomPercenChange()

学生专属方法注册

  • 注册'changeAppliance’ 方法

    Note

    学生专属方法 用于接收 webview 切换画笔工具类型 回调

    Declaration

    Objective-C

    - (void)registerChangeApplianceType;

    Swift

    func registerChangeApplianceType()
  • 注册'changeStrokeStyle’ 方法

    Note

    学生专属方法 用于接收 webview 切换画笔颜色 回调

    Declaration

    Objective-C

    - (void)registerChangeStrokeHexColor;

    Swift

    func registerChangeStrokeHexColor()
  • 注册'changeFontSize’ 方法

    Note

    学生专属方法 用于接收 webview 切换文本字体大小 回调

    Declaration

    Objective-C

    - (void)registerChangeFontSize;

    Swift

    func registerChangeFontSize()
  • 注册'changeLineWidth’ 方法

    Note

    学生专属方法 用于接收 webview 切换线条宽度 回调

    Declaration

    Objective-C

    - (void)registerChangeLineWidth;

    Swift

    func registerChangeLineWidth()

讲师、组长专属方法

  • 授予画笔权限

    Note

    用于讲师、组长授予学生画笔权限

    Declaration

    Objective-C

    - (void)setPaintBrushAuthWithUserId:(nonnull NSString *)userId
                              sessionId:(nonnull NSString *)sessionId;

    Swift

    func setPaintBrushAuthWithUserId(_ userId: String, sessionId: String)

    Parameters

    userId

    用户Id

    sessionId

    sessionId

  • 移除画笔权限

    Note

    用于讲师、组长移除学生画笔权限

    Declaration

    Objective-C

    - (void)removePaintBrushAuthWithUserId:(nonnull NSString *)userId;

    Swift

    func removePaintBrushAuth(withUserId userId: String)

    Parameters

    userId

    用户Id