自定义绘制组件
介绍
ArkUI开发框架在NDK接口提供了自定义UI组件的能力,开发者通过注册相关自定义回调事件接入ArkUI开发框架的布局渲染流程。本示例展示了如何创建自定义绘制组件。示例创建了一个自定义绘制组件,该绘制组件能够绘制自定义矩形,并使用上述自定义容器进行布局排布。
本示例为构建自定义组件-自定义绘制组件的配套示例工程。
效果预览
| 预览 |
|---|
![]() |
使用说明
- 安装编译生成的hap包,并打开应用。
- 进入首页,可点击按钮。
- 可以查看到显示得效果。
- 点击中心方块会变成绿色。
工程目录
entry/src/main/ets/
└── pages
└── Index.ets (获取导航页面)
entry/src/main/cpp/
├── types
│ └── libentry
│ └── Index.d.ts (函数对应的js映射)
├── ArkUIBaseNode.h
├── ArkUICustomContainerNode.h
├── ArkUICustomNode.h
├── ArkUINode.h
├── ArkUITextNode.h
├── CMakeLists.txt
├── napi_init.cpp
├── NativeEntry.cpp
├── NativeEntry.h
├── NativeModule.h
└── UITimer.h
具体实现
- 按照自定义布局容器章节准备前置工程。
- 创建自定义绘制组件封装对象。
- 使用自定义绘制组件和自定义容器创建示例界面。
- 修改CMakeList.txt,添加链接库。
相关权限
不涉及
依赖
不涉及
约束和限制
-
本示例支持标准系统上运行,支持设备:华为手机;
-
本示例支持API22版本SDK,版本号:6.0.2.54;
-
本示例已支持使DevEco Studio 5.1.1 Release (构建版本:5.1.1.840,构建 2025年10月18日)编译运行
下载
如需单独下载本工程,执行如下命令:
git init
git config core.sparsecheckout true
echo ArkUISample/NativeType/CustomDrawSample > .git/info/sparse-checkout
git remote add origin https://gitcode.com/harmonyos_samples/guide-snippets.git
git pull origin master
