#跟着坚果学鸿蒙#有关API16的ArkUI相关的知识点(一)harmony5

2025-05-12 12:23:17
154次阅读
0个评论
最后修改时间:2025-05-12 15:31:35

根据提供的文档内容,以下是关于 ArkUI API 16 的核心知识点总结:

ArkUI API 16 核心知识点梳理

  1. ArkUI框架概述 ArkUI是华为推出的跨端UI开发框架,提供:

声明式开发范式:基于ArkTS语言,具备高效的UI构建能力(组件、布局、状态管理)。类Web开发范式:兼容HML/CSS/JS,便于Web开发者迁移。主要功能:组件库、动画、交互事件、窗口管理、渲染控制等。

  1. 组件与Native接口 2.1 Native节点操作 通过 ArkUI_NativeNodeAPI_1 提供主线程上的节点管理功能:

核心接口:

createNode:创建组件节点(如按钮、容器)。disposeNode:销毁节点。addChild/insertChildAt:管理子节点的插入与布局。setAttribute:动态设置属性(宽度、背景色等)。registerNodeEvent:注册事件回调(如点击、触摸)。 布局与绘制:

markDirty:强制节点重新渲染。layoutNode:设置组件相对父容器的坐标。

2.2 类型与枚举

视觉属性:

BorderStyle(边框样式)、ShadowStyle(阴影效果)。AnimationCurve(动画曲线,如平滑、弹性效果)。 布局控制:

HitTestMode(触摸穿透策略)、ListItemAlignment(列表项对齐)。

  1. 手势与交互事件 3.1 手势管理(ArkUI_NativeGestureAPI_1)

支持手势类型:点击、长按、拖动、捏合、旋转、滑动。组合手势:通过 createGroupGesture 支持多手势组合逻辑。手势绑定:可关联到UI组件,设置回调处理事件。 3.2 事件处理

输入事件:支持触摸、鼠标、按键事件的分发与拦截。高级交互:

dispatchKeyEvent:向指定组件分发按键事件(API 15+)。setStopPropagation:阻止事件冒泡。

  1. 自定义弹窗与对话框 4.1 弹窗管理(ArkUI_NativeDialogAPI_1/2)

核心功能:

弹窗创建、显示、销毁。enableCustomAnimation:覆盖系统动画(需在show前调用)。API 16增强:

setKeyboardAvoidDistance:弹窗避让键盘的最小距离。setImmersiveMode:设置嵌入式弹窗蒙层区域。

4.2 按钮样式控制

acceptButtonStyle/cancelButtonStyle(API 12+):

支持设置按钮的样式、背景色、圆角、字体等。仅允许一个按钮设置为primary(高亮状态)。

  1. 动画系统 5.1 显式与关键帧动画(ArkUI_NativeAnimateAPI_1)

显式动画:

animateTo:闭包内属性变化自动触发动画(如位置、尺寸)。 关键帧动画:

keyframeAnimateTo:定义多关键帧实现复杂动效。 性能优化:markDirty 手动标记脏区,避免频繁渲染。

  1. 文本与菜单(API 16 特性) 6.1 TextMenuController

setMenuOptions:设置文本选择菜单的显示模式:

TextMenuShowMode.DEFAULT:默认模式。TextMenuShowMode.PREFER_WINDOW:优先独立窗口显示(提升体验)。

6.2 文本组件增强

插入与删除控制:

InsertValue/DeleteValue:精确控制编辑行为。 样式定制:

selectedTextStyle:选中项文本样式(颜色、字号、字体)。

  1. 元服务与跨平台支持(API 16)

元服务API兼容:

多模块(如弹窗、文本菜单、动画)支持在元服务中调用。例如:TextMenuOptions 可在轻量化服务中配置菜单显示。

  1. 自定义组件生命周期

钩子函数:

onDidBuild(API 12+):build() 后执行,适合埋点上报。onPageShow/onPageHide:页面显示/隐藏触发。aboutToDisappear:组件销毁前的资源释放。 注:禁止在生命周期中直接修改状态变量。

  1. 最佳实践建议

动画优化:优先使用系统自动脏区标记,避免滥用 markDirty。手势冲突:通过 setInterceptHitTestMode 解决嵌套组件事件冲突。弹窗层级:利用 setLevelMode 管理弹窗显示优先级(如全局弹窗置顶)。

总结: ArkUI API 16 在组件管理、手势交互、动画性能、弹窗定制及跨平台支持上均做出重要优化,尤其在文本菜单控制与元服务兼容性方面显著提升开发效率。开发者应结合声明式范式,充分利用API提供的细粒度控制能力,构建高性能的跨端应用。 #跟着坚果学鸿蒙#

收藏00

登录 后评论。没有帐号? 注册 一个。