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);

官方文档


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

相关推荐
威哥爱编程2 小时前
HarmonyOS 互动卡片实战:摇一摇触发静态转动态,前景元素出框
华为·harmonyos·arkts
威哥爱编程2 小时前
HarmonyOS 7 闪控窗实战:标准悬浮窗、侧边栏暂存与闪控球一键切换
华为·harmonyos·arkts
威哥爱编程2 小时前
HarmonyOS 7 图像超分实战:端侧 4 倍高清放大,数据不出设备
华为·harmonyos·arkts
威哥爱编程2 小时前
HarmonyOS 6.1 智能窥屏防护实战:实时感知窥屏风险,敏感页自动防护
华为·harmonyos·arkts
威哥爱编程2 小时前
HarmonyOS 7 文搜图实战:自然语言检索本地图片,全流程端侧闭环
华为·harmonyos·arkts
贾伟康2 小时前
【HarmonyOS 7新能力|041】弱网直播优化工程封装:把接入逻辑放进可维护的分层结构
性能优化·harmonyos·arkts·音视频开发·直播
贾伟康15 小时前
【HarmonyOS 7新能力|040】QUIC长连接工程封装:把接入逻辑放进可维护的分层结构
网络编程·harmonyos·arkts·quic·软件架构
昇腾知识体系16 小时前
昇腾 torchrec_npu Docker 镜像选择:CANN/PyTorch/torchrec 版本矩阵与启动参数
人工智能·华为·知识图谱
昇腾知识体系17 小时前
K8s 调度昇腾 NPU:device-plugin 部署、Volcano 与 vNPU 切分
人工智能·华为·知识图谱
菜鸟~noob23319 小时前
【Bonjour】华为Peerium架构深度解析:从冯·诺依曼到百万处理器“一台计算机”,附MATLAB性能仿真【含matlab代码,可直接运行】
开发语言·matlab·华为·peerium