登录
/
注册
首页
论坛
其它
首页
科技
业界
安全
程序
广播
Follow
关于
导读
排行榜
资讯
发帖说明
登录
/
注册
账号
自动登录
找回密码
密码
登录
立即注册
搜索
搜索
关闭
CSDN热搜
程序园
精品问答
技术交流
资源下载
本版
帖子
用户
软件
问答
教程
代码
写记录
写博客
小组
VIP申请
VIP网盘
网盘
联系我们
发帖说明
道具
勋章
任务
淘帖
动态
分享
留言板
导读
设置
我的收藏
退出
腾讯QQ
微信登录
1
2
/ 2 页
下一页
返回列表
首页
›
资源区
›
代码
›
手把手教你用 Ark-TS UI 做一个会 “动” 的计数器 ...
手把手教你用 Ark-TS UI 做一个会 “动” 的计数器
[ 复制链接 ]
辈霖利
2025-6-9 10:27:40
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
今天咱们用鸿蒙 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 绝对是你入门的最佳选择。赶紧动手试试吧,下一个有趣的应用可能就出自你的代码!
本文由认元学横发布!转载请联系。
来源:程序园用户自行投稿发布,如果侵权,请联系站长删除
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
手把手
你用
Ark
TS
UI
相关帖子
跨平台 UI 工程的 Agentic 转型:MCP 在 Avalonia 生态中的深度应用与架构演进
Godot UI布局指南
使用ui-ux-pro-max skill设计网页
手把手教你实现前端邮件预览功能
手把手教你部署 OpenClaw
鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
鸿蒙应用开发UI基础第三节:UIAbility生命周期全解析
为博客园注入现代 UI 体验:shadcn 皮肤上线
SortableJS 实现 Element UI Table行拖拽排序功能
国内零门槛首个免费 开源 7×24小时帮你干活的全场景个人助理 Agent 手把手教程
回复
使用道具
举报
提升卡
置顶卡
沉默卡
喧嚣卡
变色卡
千斤顶
照妖镜
相关推荐
业界
跨平台 UI 工程的 Agentic 转型:MCP 在 Avalonia 生态中的深度应用与架构演进
11
103
计海龄
2026-01-29
业界
Godot UI布局指南
16
209
缀访
2026-01-30
安全
使用ui-ux-pro-max skill设计网页
7
561
方方仪
2026-01-30
安全
手把手教你实现前端邮件预览功能
7
323
狭宁
2026-01-31
安全
手把手教你部署 OpenClaw
12
52
荪俗
2026-01-31
业界
鸿蒙应用开发UI基础第二节:鸿蒙应用程序框架核心解析与实操
16
111
阎一禾
2026-02-05
业界
鸿蒙应用开发UI基础第三节:UIAbility生命周期全解析
9
944
班闵雨
2026-02-05
业界
为博客园注入现代 UI 体验:shadcn 皮肤上线
10
834
科元料
2026-02-06
代码
SortableJS 实现 Element UI Table行拖拽排序功能
6
575
虽裘侪
2026-02-06
安全
国内零门槛首个免费 开源 7×24小时帮你干活的全场景个人助理 Agent 手把手教程
0
681
峰埋姚
2026-02-20
回复
(33)
处匈跑
2025-10-17 18:14:10
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
收藏一下 不知道什么时候能用到
佴莘莘
2025-10-20 18:28:42
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
感谢分享,学习下。
幌斛者
2025-10-29 16:35:50
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
不错,里面软件多更新就更好了
饨篦
2025-10-30 08:20:22
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
感谢分享,学习下。
万妙音
2025-11-25 12:57:54
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
yyds。多谢分享
眺愤
2025-12-19 09:53:28
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
很好很强大 我过来先占个楼 待编辑
恿深疏
2026-1-1 05:10:57
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
东西不错很实用谢谢分享
钦遭聘
2026-1-7 07:30:45
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
感谢分享,下载保存了,貌似很强大
采序
2026-1-18 03:12:38
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
不错,里面软件多更新就更好了
孓访懔
2026-1-18 22:08:57
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
感谢发布原创作品,程序园因你更精彩
万妙音
2026-1-20 09:21:46
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
过来提前占个楼
蓝娅萍
2026-1-21 22:37:20
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
过来提前占个楼
全愉婉
2026-1-22 10:43:49
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
鼓励转贴优秀软件安全工具和文档!
吮槌圯
2026-1-23 09:47:54
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
感谢,下载保存了
支智敏
2026-1-24 02:02:33
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
懂技术并乐意极积无私分享的人越来越少。珍惜
后仲舒
2026-1-28 02:56:40
回复
使用道具
举报
照妖镜
猛犸象科技工作室:
网站开发,备案域名,渗透,服务器出租,DDOS/CC攻击,TG加粉引流
谢谢楼主提供!
襁壮鸢
2026-2-2 04:10:05
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
喜欢鼓捣这些软件,现在用得少,谢谢分享!
咪四
2026-2-4 06:39:14
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
喜欢鼓捣这些软件,现在用得少,谢谢分享!
瞿佳悦
2026-2-5 05:13:31
回复
使用道具
举报
照妖镜
程序园永久vip申请,500美金$,无限下载程序园所有程序/软件/数据/等
感谢分享,下载保存了,貌似很强大
下一页 »
1
2
/ 2 页
下一页
高级模式
B
Color
Image
Link
Quote
Code
Smilies
您需要登录后才可以回帖
登录
|
立即注册
回复
本版积分规则
回帖并转播
回帖后跳转到最后一页
浏览过的版块
安全
科技
程序
问答
软件
签约作者
程序园优秀签约作者
发帖
辈霖利
2026-2-5 05:13:31
关注
0
粉丝关注
23
主题发布
板块介绍填写区域,请于后台编辑
财富榜{圆}
3934307807
991124
anyue1937
9994892
kk14977
6845359
4
xiangqian
638210
5
宋子
9898
6
韶又彤
9918
7
闰咄阅
9993
8
刎唇
9995
9
蓬森莉
9883
10
遗憩
10006
查看更多
今日好文热榜
385
SeeDance2.0提示词之跳舞女孩
6
SeeDance2.0提示词之跳舞女孩
680
国内零门槛首个免费 开源 7×24小时帮
570
[拆解LangChain执行引擎]非常规Pending Wri
65
AI开发-python-milvus向量数据库(2-8 -mil
77
[LKD/Linux 内核] 关于对 current_thread_i
6
[LKD/Linux 内核] 关于对 current_thread_i
5
[LKD/Linux 内核] 关于对 current_thread_i
537
杂题选做(3)
4
9、PipedInputStream和PipedOutputStream的
753
凸优化数学基础笔记(五):极小值点的判定
856
【节点】[MainLightRealtimeShadow节点]原
11
【渗透测试】HTB靶场之WingData 全过程wp
381
2023年电赛国赛经历
534
从零开始学Flink:实时数仓与维表时态Join
987
Stanford-CS336-Lecture-01 学习理解
663
FastAPI实战:WebSocket长连接保持与心跳机
362
FPGA使用镜像加载技术来切换运行中的比特流