HarmonyOS5开辟:手把手教你用 Ark-TS UI 做一个会 “动” 的计数器:从代 ...

打印 上一主题 下一主题

主题 1916|帖子 1916|积分 5748

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
今天咱们用鸿蒙 5 的 Ark-TS UI 做一个简单又有趣的计数器应用。点击按钮数字就会增长,而且界面还能自动更新。通过这个案例,你能轻松明白 Ark-TS UI 的核心玩法。
一、最终结果长什么样?
打开应用,你会看到一个大按钮,上面写着 “点击加 1”。每次点击按钮,按钮上方的数字就会变大。比如第一次点击变成 “1”,第二次变成 “2”,依此类推。整个过程不需要手动刷新页面,数字会自动变化。
二、完整代码长这样
typescript
@Entry
@Component
struct CounterApp {
// 用@State标记一个变量count,它的值变化时界面会自动更新
@State count: number = 0
build() {
// Column是一个垂直布局容器,里面的内容会从上到下排列
Column() {
// Text组件显示文字,这里显示当前的count值
Text(当前计数:${this.count})
.fontSize(24) // 设置字体巨细为24像素
.margin(20) // 给文本四周添加20像素的边距
  1.   // Button组件是一个按钮,点击时触发onClick事件
  2.   Button("点击加1")
  3.     .onClick(() => {
  4.       // 点击按钮时,count的值增加1
  5.       this.count++
  6.     })
  7.     .fontSize(18) // 按钮文字大小18像素
  8.     .padding(15) // 按钮内部的 padding 为15像素
  9.     .backgroundColor('#007DFF') // 按钮背景色为蓝色
  10.     .textColor('#FFFFFF') // 按钮文字颜色为白色
  11.     .cornerRadius(8) // 按钮圆角半径8像素
  12. }
  13. // 设置整个Column布局的宽度为屏幕宽度的100%
  14. .width('100%')
  15. // 设置整个布局的对齐方式为垂直和水平居中
  16. .justifyContent(FlexAlign.Center)
  17. .alignItems(HorizontalAlign.Center)
复制代码
}
}
三、逐行代码拆解,零基础也能看懂
@Entry 和 @Component
@Entry 表示这个组件是应用的入口,程序从这里开始运行。
@Component 标记这是一个可复用的组件,里面包罗界面和逻辑。
@State count: number = 0
@State 是 Ark-TS UI 的关键装饰器,它告诉系统:“这个变量count的值会影响界面,一旦它变化,界面要自动更新。”
这里初始化count为 0,也就是计数器的初始值。
build() 方法
这个方法定义了组件的界面结构。Ark-TS UI 通过声明式语法描述界面,就像 “绘图纸” 一样。
Column() 布局容器
Column是一个垂直布局容器,里面的组件会从上到下排列。就像一个竖着的盒子,把内容依次装进去。
Text 组件显示计数
Text(当前计数:








{this.count}会实时更换为count` 变量的值。
.fontSize(24):设置文字巨细为 24 像素。
.margin(20):给文本四周添加 20 像素的空缺,让界面看起来不拥挤。
Button 组件实现点击功能
Button("点击加1"):创建一个按钮,显示文字 “点击加 1”。
.onClick(() => { this.count++ }):点击按钮时,执行this.count++,也就是让count的值加 1。
.fontSize(18):按钮文字巨细 18 像素。
.padding(15):按钮内部的空缺区域为 15 像素,让文字看起来不贴着边沿。
.backgroundColor('#007DFF'):按钮背景色设置为蓝色。
.textColor('#FFFFFF'):按钮文字颜色设置为白色。
.cornerRadius(8):按钮四个角设置为圆角,半径 8 像素,让按钮看起来更圆润。
设置布局的团体样式
.width('100%'):让整个Column布局的宽度占满屏幕。
.justifyContent(FlexAlign.Center) 和 .alignItems(HorizontalAlign.Center):让布局内的内容在垂直和水平方向都居中显示,这样按钮和文本会在屏幕正中央。
四、核心原理:为什么界面会自动更新?
Ark-TS UI 的机密武器就是@State装饰器。当count的值变化时(比如点击按钮让count++),Ark-TS UI 会自动检测到这个变化,并重新渲染界面。你不需要手动操作界面元素,只需要关注数据逻辑,界面会 “自动听话”。
这种数据驱动界面的方式,让开辟变得更简单。你只需要关心 “数据怎么变”,而不用费心 “界面怎么改”,Ark-TS UI 会帮你处理好一切。
五、晒为总结以下总结:从案例学 Ark-TS UI 的精髓
通过这个计数器案例,我们学到了 Ark-TS UI 的三个核心能力:
声明式语法:用简洁的代码描述界面结构,就像绘图纸一样直观。
状态管理:@State让数据和界面自动联动,数据变,界面跟着变。
丰富的组件和样式:直接使用Text、Button等组件,通过链式调用快速设置样式,省去了复杂的 CSS 代码。
假如你想实验鸿蒙 5 开辟,Ark-TS UI 绝对是你入门的最佳选择。赶紧动手试试吧,下一个有趣的应用可能就出自你的代码!
本文由认元学横发布!转载请联系。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

吴旭华

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表