# com.herewhite.sdk.Displayer class 参考 (/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer)

> For AI agents: see the complete documentation index at [llms.txt](/llms.txt).

<a id="details"></a>

## 详细描述 [#详细描述]

适用版本：**Whiteboard Android SDK 2.16.134**。

`Displayer` 类。该类为 Room 类和 Player 类的父类。
`Room` 和 `Player` 类可以继承该类下的方法。

## 属性与 JSON 字段 [#属性与-json-字段]

Java 非公开字段通过对应 getter/setter 访问；可选包装类型未设置时通常不写入 JSON。初值包含字段声明及无参构造中的直接赋值；其他构造参数以签名为准。

| 字段 | 声明 | 源码初值 | 说明 |
| --- | --- | --- | --- |
| [backgroundColor](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#afcfe8a00185c94e03dc1533cbc56d1eb) | `int backgroundColor` | Color.WHITE | [api-center-table-0 details](#table-slot-api-center-table-0) |
| [syncedStore](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#ab1907cf0830fe6eefff3efaf5fcbd98b) | `SyncedStore syncedStore` | 未显式赋值 | [api-center-table-1 details](#table-slot-api-center-table-1) |

<a id="table-slot-api-center-table-0"></a>

**api-center-table-0 details**

模型属性；通过对应 getter/setter 访问。

<a id="table-slot-api-center-table-1"></a>

**api-center-table-1 details**

模型属性；通过对应 getter/setter 访问。

| 公开成员签名 |  |
| --- | --- |
| void | [postIframeMessage](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a218d273792fc859b2f343f9185368407) (String string) |
| void | [postIframeMessage](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#aafcea84ae1fc2539996f6d0e2710a362) (WhiteObject object) |
| void | [getScenePathType](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#ac47409b4e5ca783e080e11e0c032c145) (String path, Promise&lt;WhiteScenePathType&gt; promise) |
| void | [getScene](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#ac8467c97aecb62aa78d8520dabd108bd) (String path, Promise&lt;Scene&gt; promise) |
| void | [getEntireScenes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a8fd708269f78c0a4d8fbee3f3ec465f2) (Promise&lt;Map&lt;String, Scene[]&gt;&gt; promise) |
| void | [refreshViewSize](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a20be8e5cc145577cd66706d9012989a6) () |
| void | [scaleIframeToFit](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a65bbfa5b2fd5fa7d0cb1e1cfe03413f7) () |
| void | [scalePptToFit](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a4b8ecbbc38569db7868c25790f191fbe) () |
| void | [scalePptToFit](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a29f2d682f7d728e53767ded3889c60ee) (AnimationMode mode) |
| void | [addMagixEventListener](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a5789b995344ae4c9bd0872dfb3fd8cae) (String eventName, EventListener eventListener) |
| void | [addHighFrequencyEventListener](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a53b433bf7d24a786c4976ba85dee9940) (String eventName, FrequencyEventListener eventListener, Integer fireInterval) |
| void | [removeMagixEventListener](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a071edba37f99285bbea69988481eb3ae) (String eventName) |
| void | [convertToPointInWorld](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a1bfd39e7482e2937908a2dea49db1c27) (double x, double y, Promise&lt;Point&gt; promise) |
| void | [setCameraBound](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a7ebc499b1f6ca5457d41fcec9bad214e) (CameraBound bound) |
| int | [getBackgroundColor](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#aa164b4edc632f73ac9a83b3f1bdab64c) () |
| void | [setBackgroundColor](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a67b020e6d15247e1bdc7dbd9b86bcfbe) (int intColor) |
| void | [getScenePreviewImage](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a01268dd20584fcebfa1aecc5d98e3616) (String scenePath, Promise&lt;Bitmap&gt; promise) |
| void | [getSceneSnapshotImage](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a0995da14d5d9b20d5f98c2639018700e) (String scenePath, Promise&lt;Bitmap&gt; promise) |
| void | [disableCameraTransform](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#a4b4ee486693efafc4683e312244d1129) (Boolean disable) |
| void | [moveCamera](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#aa73a9b1c04e23e0f8b1ecb79099d858a) (CameraConfig camera) |
| void | [moveCameraToContainer](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#af19ee0561ddd8b547b22040e58309549) (RectangleConfig rectangle) |
| void | [getWindowManagerAttributes](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#af38f8a6b7aa60683b15741dd3fe3b462) (Promise&lt;String&gt; promise) |
| SyncedStore | [getSyncedStore](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-displayer#ae32ee0a2fa5eb8f135e029636205d68e) () |

## 变量说明 [#变量说明]

<a id="afcfe8a00185c94e03dc1533cbc56d1eb"></a>

### backgroundColor [#backgroundcolor]

```text
int backgroundColor
```

源码初值：Color.WHITE

模型属性；通过对应 getter/setter 访问。

<a id="ab1907cf0830fe6eefff3efaf5fcbd98b"></a>

### syncedStore [#syncedstore]

```text
SyncedStore syncedStore
```

源码初值：未显式赋值

模型属性；通过对应 getter/setter 访问。

## 函数说明 [#函数说明]

<a id="a218d273792fc859b2f343f9185368407"></a>

### postIframeMessage() [#postiframemessage]

<ApiSignature>

void postIframeMessage(String string)

</ApiSignature>

向 iframe 插件发送字符串信息。

:::info[自从]
2.11.4
:::

<ParameterList title="参数">
<Parameter name="string">

字符串格式的信息。

</Parameter>
</ParameterList>

<a id="aafcea84ae1fc2539996f6d0e2710a362"></a>

### postIframeMessage() [#postiframemessage-1]

<ApiSignature>

void postIframeMessage(WhiteObject object)

</ApiSignature>

向 iframe 插件发送 key-value 格式的信息。

:::info[自从]
2.11.4
:::

<ParameterList title="参数">
<Parameter name="object">

key-value 格式的信息，必须为 [`WhiteObject`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1domain-1-1-white-object) 的子类。

</Parameter>
</ParameterList>

<a id="ac47409b4e5ca783e080e11e0c032c145"></a>

### getScenePathType() [#getscenepathtype]

<ApiSignature>

void getScenePathType(String path, Promise&lt;WhiteScenePathType&gt; promise)

</ApiSignature>

查询场景路径类型。

你可以在该方法中指定想要查询的场景路径，SDK 会返回该路径对应的场景类型。

<ParameterList title="参数">
<Parameter name="path">

想要查询的场景路径。

</Parameter>
<Parameter name="promise">

`Promise<WhiteScenePathType>` 接口实例，详见 [`Promise`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/interfacecom-1-1herewhite-1-1sdk-1-1domain-1-1-promise)。你可以通过该接口获取 `getScenePathType` 方法的调用结果：

- 如果方法调用成功，将返回场景路径类型。详见 [`WhiteScenePathType`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/enumcom-1-1herewhite-1-1sdk-1-1domain-1-1-white-scene-path-type)。
- 如果方法调用失败，将返回错误信息。

</Parameter>
</ParameterList>

<a id="ac8467c97aecb62aa78d8520dabd108bd"></a>

### getScene() [#getscene]

<ApiSignature>

void getScene(String path, Promise&lt;Scene&gt; promise)

</ApiSignature>

获取指定场景的信息。

<ParameterList title="参数">
<Parameter name="path">

场景的路径。请确保场景路径以 `/` 开头，并且由场景目录和场景名构成，例如，`/math/classA`。

</Parameter>
<Parameter name="promise">

`Promise<Scene>` 接口实例，详见 [`Promise`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/interfacecom-1-1herewhite-1-1sdk-1-1domain-1-1-promise)。你可以通过该接口获取 `getScene` 方法的调用结果：

- 如果方法调用成功，将返回场景信息。详见 [`Scene`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1domain-1-1-scene)。
- 如果方法调用失败，将返回错误信息。

</Parameter>
</ParameterList>

<a id="a8fd708269f78c0a4d8fbee3f3ec465f2"></a>

### getEntireScenes() [#getentirescenes]

<ApiSignature>

void getEntireScenes(Promise&lt;Map&lt;String, Scene[]&gt;&gt; promise)

</ApiSignature>

获取当前房间内所有场景的信息。

<ParameterList title="参数">
<Parameter name="promise">

`Promise<Map<String, Scene[]>>` 接口实例，详见 [`Promise`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/interfacecom-1-1herewhite-1-1sdk-1-1domain-1-1-promise)。你可以通过该接口获取 `getEntireScenes` 方法的调用结果：

- 如果方法调用成功，将返回当前房间内所有场景的信息。
- 如果方法调用失败，将返回错误信息。

</Parameter>
</ParameterList>

<a id="a20be8e5cc145577cd66706d9012989a6"></a>

### refreshViewSize() [#refreshviewsize]

<ApiSignature>

void refreshViewSize()

</ApiSignature>

刷新白板的界面。

当 [`WhiteboardView`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1-whiteboard-view) 出现改变时，需要手动调用该方法刷新白板的界面。

<a id="a65bbfa5b2fd5fa7d0cb1e1cfe03413f7"></a>

### scaleIframeToFit() [#scaleiframetofit]

<ApiSignature>

void scaleIframeToFit()

</ApiSignature>

调整视角，以保证完整显示 H5 课件的内容。

:::info[自从]
2.12.13
:::

<a id="a4b8ecbbc38569db7868c25790f191fbe"></a>

### scalePptToFit() [#scaleppttofit]

<ApiSignature>

void scalePptToFit()

</ApiSignature>

以渐变模式调整视角，以保证完整显示 PPT 的内容。

:::info[自从]
2.4.22
:::

<a id="a29f2d682f7d728e53767ded3889c60ee"></a>

### scalePptToFit() [#scaleppttofit-1]

<ApiSignature>

void scalePptToFit(AnimationMode mode)

</ApiSignature>

根据指定的动画模式调整视角，以保证完整显示 PPT 的内容。

:::info[自从]
2.4.28
:::

<ParameterList title="参数">
<Parameter name="mode">

视角调整时的动画模式，详见 [`AnimationMode`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/enumcom-1-1herewhite-1-1sdk-1-1domain-1-1-animation-mode)。

</Parameter>
</ParameterList>

<a id="a5789b995344ae4c9bd0872dfb3fd8cae"></a>

### addMagixEventListener() [#addmagixeventlistener]

<ApiSignature>

void addMagixEventListener(String eventName, EventListener eventListener)

</ApiSignature>

注册自定义事件监听。

成功注册后，你可以接收到对应的自定义事件通知。

:::info[注解]
对于同名的自定义事件，SDK 仅支持触发一个回调。
:::

<ParameterList title="参数">
<Parameter name="eventName">

想要监听的自定义事件名称。

</Parameter>
<Parameter name="eventListener">

自定义事件回调，详见 [`EventListener`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/interfacecom-1-1herewhite-1-1sdk-1-1domain-1-1-event-listener)。如果添加多个同名的事件回调，则之前添加的回调会被覆盖。

</Parameter>
</ParameterList>

<a id="a53b433bf7d24a786c4976ba85dee9940"></a>

### addHighFrequencyEventListener() [#addhighfrequencyeventlistener]

<ApiSignature>

void addHighFrequencyEventListener(String eventName, FrequencyEventListener eventListener, Integer fireInterval)

</ApiSignature>

注册高频自定义事件监听。

成功注册后，你可以接收到对应的自定义事件通知。

:::info[注解]
对于同名的自定义事件，SDK 仅支持触发一个回调。
:::

<ParameterList title="参数">
<Parameter name="eventName">

想要监听的自定义事件名称。

</Parameter>
<Parameter name="eventListener">

自定义事件回调，详见 [`FrequencyEventListener`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/interfacecom-1-1herewhite-1-1sdk-1-1domain-1-1-frequency-event-listener)。如果添加多个同名的事件回调，则之前添加的回调会被覆盖。

</Parameter>
<Parameter name="fireInterval">

SDK 触发回调的频率，单位为毫秒。该参数最小值为 500 ms，如果设置为低于该值会被重置为 500 ms。

</Parameter>
</ParameterList>

<a id="a071edba37f99285bbea69988481eb3ae"></a>

### removeMagixEventListener() [#removemagixeventlistener]

<ApiSignature>

void removeMagixEventListener(String eventName)

</ApiSignature>

移除自定义事件监听。

<ParameterList title="参数">
<Parameter name="eventName">

想要移除监听的自定义事件名称。

</Parameter>
</ParameterList>

<a id="a1bfd39e7482e2937908a2dea49db1c27"></a>

### convertToPointInWorld() [#converttopointinworld]

<ApiSignature>

void convertToPointInWorld(double x, double y, Promise&lt;Point&gt; promise)

</ApiSignature>

转换白板上点的坐标。

该方法可以将 Android 内部坐标系（以屏幕左上角为原点）中的坐标转换为世界坐标系（以白板初始化时的中点为原点）坐标。

<ParameterList title="参数">
<Parameter name="x">

点在 Android 坐标系中的 X 轴坐标。

</Parameter>
<Parameter name="y">

点在 Android 坐标系中的 Y 轴坐标。

</Parameter>
<Parameter name="promise">

`Promise<Point>` 接口实例，详见 [`Promise`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/interfacecom-1-1herewhite-1-1sdk-1-1domain-1-1-promise)。你可以通过该接口获取 `convertToPointInWorld` 的调用结果：

- 如果方法调用成功，将返回点在世界坐标系上的坐标。详见 [`Point`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1domain-1-1-point)。
- 如果方法调用失败，将返回错误信息。

</Parameter>
</ParameterList>

<a id="a7ebc499b1f6ca5457d41fcec9bad214e"></a>

### setCameraBound() [#setcamerabound]

<ApiSignature>

void setCameraBound(CameraBound bound)

</ApiSignature>

设置视角边界。

:::info[自从]
2.5.0
:::

<ParameterList title="参数">
<Parameter name="bound">

视角边界，详见 [`CameraBound`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1domain-1-1-camera-bound)。

</Parameter>
</ParameterList>

<a id="aa164b4edc632f73ac9a83b3f1bdab64c"></a>

### getBackgroundColor() [#getbackgroundcolor]

<ApiSignature>

int getBackgroundColor()

</ApiSignature>

获取本地白板的背景色。

:::info[自从]
2.4.0
:::

<a id="弃用"></a>

:::error[弃用:]
该方法已废弃。
:::

<h4 data-toc-hidden="true" id={"返回值"}>返回值</h4>

本地白板的背景色，格式为 16 进制 ARGB 定义下的 Hex 值。

<a id="a67b020e6d15247e1bdc7dbd9b86bcfbe"></a>

### setBackgroundColor() [#setbackgroundcolor]

<ApiSignature>

void setBackgroundColor(int intColor)

</ApiSignature>

设置白板的背景色。

:::info[自从]
2.4.14
:::

<a id="弃用-1"></a>

:::error[弃用:]
该方法已废弃，请改用 Android 系统的 [setBackgroundColor](https://developer.android.com/reference/android/view/View#setBackgroundColor(int)) 方法。
:::

:::info[注解]
该方法仅对本地白板有效，不会影响房间内其他用户白板的背景色。
:::

<ParameterList title="参数">
<Parameter name="intColor">

白板的背景色，格式为 16 进制 RGBA 定义下的 Hex 值。注意 A 属性不能达到使白板透明的效果。

</Parameter>
</ParameterList>

<a id="a01268dd20584fcebfa1aecc5d98e3616"></a>

### getScenePreviewImage() [#getscenepreviewimage]

<ApiSignature>

void getScenePreviewImage(String scenePath, Promise&lt;Bitmap&gt; promise)

</ApiSignature>

获取指定场景的预览图。

:::info[自从]
2.3.0
:::

<ParameterList title="参数">
<Parameter name="scenePath">

场景路径。

</Parameter>
<Parameter name="promise">

`Promise<Bitmap>` 接口实例，详见 [`Promise`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/interfacecom-1-1herewhite-1-1sdk-1-1domain-1-1-promise)。你可以通过该接口获取 `getScenePreviewImage` 方法的调用结果：

- 如果方法调用成功，将返回指定场景的预览图。
- 如果方法调用失败，将返回错误码。

</Parameter>
</ParameterList>

<a id="a0995da14d5d9b20d5f98c2639018700e"></a>

### getSceneSnapshotImage() [#getscenesnapshotimage]

<ApiSignature>

void getSceneSnapshotImage(String scenePath, Promise&lt;Bitmap&gt; promise)

</ApiSignature>

获取指定场景的截图。

:::info[自从]
2.3.0
:::

<ParameterList title="参数">
<Parameter name="scenePath">

场景路径。

</Parameter>
<Parameter name="promise">

`Promise<Bitmap>` 接口实例，详见 [`Promise`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/interfacecom-1-1herewhite-1-1sdk-1-1domain-1-1-promise)。你可以通过该接口获取 `getSceneSnapshotImage` 方法的调用结果：

- 如果方法调用成功，将返回指定场景的截图。
- 如果方法调用失败，将返回错误信息。

</Parameter>
</ParameterList>

<a id="a4b4ee486693efafc4683e312244d1129"></a>

### disableCameraTransform() [#disablecameratransform]

<ApiSignature>

void disableCameraTransform(Boolean disable)

</ApiSignature>

禁止/允许用户调整视角。

:::info[自从]
2.11.0
:::

该方法用于禁止或允许用户通过触屏手势移动或缩放视角。

<ParameterList title="参数">
<Parameter name="disable">

是否禁止用户调整视角：

- `true`: 禁止用户调整视角。
- `false`: (默认) 允许用户调整视角。

</Parameter>
</ParameterList>

<a id="aa73a9b1c04e23e0f8b1ecb79099d858a"></a>

### moveCamera() [#movecamera]

<ApiSignature>

void moveCamera(CameraConfig camera)

</ApiSignature>

调整视角。

:::info[自从]
2.2.0
:::

调用该方法后，SDK 会根据传入的参数调整视角。

<ParameterList title="参数">
<Parameter name="camera">

视角的参数配置，详见 [`CameraConfig`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1domain-1-1-camera-config)。

</Parameter>
</ParameterList>

<a id="af19ee0561ddd8b547b22040e58309549"></a>

### moveCameraToContainer() [#movecameratocontainer]

<ApiSignature>

void moveCameraToContainer(RectangleConfig rectangle)

</ApiSignature>

调整视角，以保证完整显示视觉矩形。

:::info[自从]
2.2.0
:::

<ParameterList title="参数">
<Parameter name="rectangle">

视觉矩形的参数设置，详见 [`RectangleConfig`](/zh-CN/api-reference/whiteboard/whiteboard-sdk/android/classcom-1-1herewhite-1-1sdk-1-1domain-1-1-rectangle-config)。

</Parameter>
</ParameterList>

<a id="af38f8a6b7aa60683b15741dd3fe3b462"></a>

### getWindowManagerAttributes() [#getwindowmanagerattributes]

<ApiSignature>

void getWindowManagerAttributes(Promise&lt;String&gt; promise)

</ApiSignature>

获取当前多窗口状态

#### 参数 [#参数]

<ParameterList title="参数">
<Parameter name="promise" />
</ParameterList>

<a id="ae32ee0a2fa5eb8f135e029636205d68e"></a>

### getSyncedStore() [#getsyncedstore]

<ApiSignature>

SyncedStore getSyncedStore()

</ApiSignature>

getSyncedStore：com.herewhite.sdk.Displayer 的公开成员。参数和返回类型见下方签名。
