登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
博客
发1篇日志+1圆
记录
发1条记录+2圆币
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
VIP网盘
VIP申请
网盘
联系我们
道具
勋章
任务
设置
我的收藏
退出
腾讯QQ
微信登录
返回列表
首页
›
资源区
›
代码
›
手把手教你用 Ark-TS UI 做一个会 “动” 的计数器 ...
手把手教你用 Ark-TS UI 做一个会 “动” 的计数器
[ 复制链接 ]
辈霖利
2025-6-9 10:27:40
今天咱们用鸿蒙 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像素的边距
// Button组件是一个按钮,点击时触发onClick事件 Button("点击加1") .onClick(() => { // 点击按钮时,count的值增加1 this.count++ }) .fontSize(18) // 按钮文字大小18像素 .padding(15) // 按钮内部的 padding 为15像素 .backgroundColor('#007DFF') // 按钮背景色为蓝色 .textColor('#FFFFFF') // 按钮文字颜色为白色 .cornerRadius(8) // 按钮圆角半径8像素 } // 设置整个Column布局的宽度为屏幕宽度的100% .width('100%') // 设置整个布局的对齐方式为垂直和水平居中 .justifyContent(FlexAlign.Center) .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 绝对是你入门的最佳选择。赶紧动手试试吧,下一个有趣的应用可能就出自你的代码!
本文由认元学横发布!转载请联系。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
签约作者
程序园优秀签约作者
发帖
辈霖利
2025-6-9 10:27:40
关注
0
粉丝关注
15
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
敖可
9986
背竽
9992
猷咎
9990
4
凶契帽
9990
5
里豳朝
9990
6
处匈跑
9990
7
黎瑞芝
9990
8
恐肩
9988
9
终秀敏
9988
10
杭环
9988
查看更多