ArkTS 组件事件、状态管理与资源管理

1. 组件事件

组件事件是在用户与界面交互时触发的操作,如点击、触碰、滑屏、按键等。在 ArkTS 中,通过为组件绑定事件处理函数,实现对用户交互的响应。

常用事件示例
事件类型 描述 示例
onClick() 点击事件 Button().onClick(handler)
onTouch() 触摸事件 Image().onTouch(handler)
onKey() 按键事件 TextField().onKey(handler)
onSwipe() 滑屏事件 ScrollView().onSwipe(handler)
按钮点击事件
typescript 复制代码
@Entry
@Component
struct ButtonExample {
  build() {
    Button("点击我")
      .onClick(() => {
        console.log("按钮被点击了!");
      });
  }
}

2. 组件状态

组件状态是指由 @State 装饰的变量,这些变量与 UI 渲染绑定。当状态变量的值发生变化时,UI 会自动刷新。

3. 资源管理

资源管理是开发中必不可少的一环,用于存储和管理应用中的图片、音视频、多语言文本等资源。HarmonyOS 提供了 resource 目录来管理这些资源。

3.1 资源目录结构
目录类型 说明 示例资源文件
base/element 存放 JSON 格式的元素资源,如字符串、颜色、布尔值等 color.json, string.json
base/media 存放图片、音视频等非文本资源 icon.png, background.mp3
base/profile 存放自定义配置文件 test_profile.json
rawfile 自由放置资源文件,未编译直接打包 my_resource.txt, data.csv
3.2 语言环境支持
目录名称 说明
zh_CN 存放中文资源,当设备语言为中文时优先匹配。
en_US 存放英文资源,当设备语言为英文时优先匹配。

4. 文本组件与图片组件

4.1 文本组件

文本组件用于显示固定或动态的文字内容。

typescript 复制代码
Text("欢迎来到 ArkTS 开发")
  .fontSize(18)
  .textColor(Color.Blue);
4.2 图片组件

图片组件 Image 用于展示本地或网络图片。

typescript 复制代码
Image($rawfile("icon.png"))
  .width(100)
  .height(100);

官方文档


凡是过去,皆为序章;凡是未来,皆有可期。

相关推荐
leon_teacher16 小时前
HarmonyOS 6 ArkUI 实战:用 Tabs 与 Shape Path 手写凹槽凸起底部导航栏
华为·harmonyos
小雨青年21 小时前
鸿蒙 HarmonyOS 6 | Pura X Max 鸿蒙原生适配 04:开合切换后的选中状态保持
华为·harmonyos
大师兄666821 小时前
HarmonyOS 卡片 UI 三种玩法:普通卡片、动效卡片、Canvas 卡片
harmonyos·arkts·formkit·动效卡片·canvas卡片
特立独行的猫a1 天前
鸿蒙 PC 命令行工具迁移实战 · 直播PPT
android·华为·harmonyos·vcpkg·三方库移植·鸿蒙pc
想你依然心痛1 天前
HarmonyOS 6(API 23)实战:基于悬浮导航、沉浸光感与Face AR & Body AR的“灵犀智投“——PC端沉浸式AR量化交易分析工作台
华为·ar·harmonyos·悬浮导航·沉浸光感
特立独行的猫a1 天前
鸿蒙 PC 三方库移植实战 · 直播课件(详细教案)
华为·harmonyos·移植·鸿蒙pc·opendesk
ZHW_AI课题组1 天前
调用华为智能云API实现手写图片识别
图像处理·python·机器学习·华为·分类
leon_teacher1 天前
HarmonyOS 6 鸿蒙APP应用实战:基于 ArkUI V2 打造儿童古诗学习宝 App 从 0 到 1
学习·华为·harmonyos
想你依然心痛1 天前
HarmonyOS 6(API 23)实战:基于Face AR数字人驱动与Body AR手势控制的“星播工坊“——PC端沉浸式虚拟直播系统
华为·ar·harmonyos·悬浮导航·沉浸光感
哦***71 天前
真实评测 | FreeBuds Pro 5独立空间音频
华为·音频·harmonyos