@ohos.arkui.node

Node将自定义节点的二级模块API组织在一起,方便开发者进行导出使用。

  • BuilderNode模块:提供能够挂载原生组件的自定义节点BuilderNode。不建议将BuilderNode作为子节点挂载到其他自定义节点上。

  • FrameNode模块:提供自定义节点FrameNode,表示组件树的实体节点。NodeController可通过BuilderNode持有的FrameNode将其挂载到NodeContainer上,也可通过FrameNode获取RenderNode,挂载到其他FrameNode上。

  • NodeController模块:提供NodeController用于实现自定义节点的创建、显示、更新等操作,并负责将自定义节点挂载到NodeContainer上。

  • Graphics模块:提供自定义节点相关属性设置的定义。

  • RenderNode模块:提供自绘制渲染节点RenderNode,支持开发者通过C API进行开发,完成自定义绘制需求。

  • XComponentNode模块:提供XComponent节点XComponentNode,表示组件树中的XComponent组件,用于EGL/OpenGLES和媒体数据写入,并支持动态修改节点渲染类型。

说明:

本模块首批接口从API version 11开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

当前不支持在预览器中使用自定义节点。

UIContext获取方法

1.使用ohos.window中的getUIContext()方法获取UIContext实例。

2.可以通过自定义组件内置方法getUIContext()获取。

3.可以在NodeControllermakeNode回调方法中获取。

导入模块

import {
  BuilderNode,
  NodeController,
  FrameNode,
  RenderNode,
  XComponentNode,
  NodeRenderType,
  RenderOptions,
  DrawContext,
  Size,
  Offset,
  Position,
  Pivot,
  Scale,
  Translation,
  Matrix4,
  Rotation,
  Frame
} from "@ohos.arkui.node";