HarmonyOS 鸿蒙Next 零基础学习原生应用开发第二贴:ArkTS基本语法(声明式UI概述)
HarmonyOS 鸿蒙Next 零基础学习原生应用开发第二贴:ArkTS基本语法(声明式UI概述)
声明式UI概述
ArkTS以声明方式组合和扩展组件来描述应用程序的UI,同时还提供了基本的属性、事件和子组件配置方法,帮助开发者实现应用交互逻辑。
1)创建组件
根据组件构造方法的不同,创建组件包含有参数和无参数两种方式。创建组件时不需要new
运算符。
示例演示:
@Entry
@Component
struct UITest {
build() {
Column() {
Text('item 1')
Divider()
Text('item 2')
}
}
}
预览如下:
2.有参数
如果组件的接口定义包含构造参数,则在组件后面的“()`”配置相应参数。
1)Image组件的必选参数src
。
示例:
Image('https://xyz/test.jpg')
2)Text组件的非必选参数content
。
示例:
Text('test')
Text($r('app.string.title_value'))
Text()
3)变量或表达式也可以用于参数赋值,其中表达式返回的结果类型必须满足参数类型要求。
示例:
Image(this.imagePath)
Image('https://' + this.imageUrl)
Text(`count: ${this.count}`)
示例演示:
@Entry
@Component
struct UITest {
build() {
Column() {
Image('https://img0.baidu.com/it/u=110176915,621401482&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=665')
.height(500)
Text('美女')
}
}
}
预览如下:
配置属性
属性方法以“.”链式调用的方式配置系统组件的样式和其他属性,建议每个属性方法单独写一行。
示例:
Text('test')
.fontSize(12)
配置组件的多个属性。
Image('test.jpg')
.alt('error.jpg')
.width(100)
.height(100)
除了直接传递常量参数外,还可以传递变量或表达式。
示例:
Text('hello')
.fontSize(this.size)
Image('test.jpg')
.width(this.count % 2 === 0 ? 100 : 200)
.height(this.offset + 100)
对于系统组件,ArkUI还为其属性预定义了一些枚举类型供开发者调用,枚举类型可以作为参数传递,但必须满足参数类型要求。
示例:
Text('hello')
.fontSize(20)
.fontColor(Color.Red)
.fontWeight(FontWeight.Bold)
配置事件
事件方法以“.”链式调用的方式配置系统组件支持的事件,建议每个事件方法单独写一行。
示例:
Button('Click me')
.onClick(() => {
this.myText = 'ArkUI';
})
配置子组件
如果组件支持子组件配置,则需在尾随闭包“{…}”中为组件添加子组件的UI描述。
示例:
Column() {
Text('Hello')
.fontSize(100)
Divider()
Text(this.myText)
.fontSize(100)
.fontColor(Color.Red)
}
更多关于HarmonyOS 鸿蒙Next 零基础学习原生应用开发第二贴:ArkTS基本语法(声明式UI概述)的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
更多关于HarmonyOS 鸿蒙Next 零基础学习原生应用开发第二贴:ArkTS基本语法(声明式UI概述)的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html
ArkTS是HarmonyOS中用于开发原生应用的一种新的编程语言框架,它基于TypeScript的扩展,专注于声明式UI的开发。声明式UI是一种通过描述UI应该是什么样子的方式来构建界面的方法,与命令式编程中直接操作UI元素不同,它更侧重于描述UI的状态和布局。
在ArkTS中,开发者可以通过简单的声明来定义UI组件及其属性,而无需关心这些组件是如何被渲染到屏幕上的。这种方式简化了UI的开发过程,使得开发者可以更加专注于业务逻辑的实现。
声明式UI的优势在于其简洁性和易维护性。由于UI是通过描述性的语言来定义的,因此代码更加清晰易懂,也更容易进行调试和修改。此外,声明式UI还能够更好地支持响应式设计,使得UI能够根据不同的设备尺寸和分辨率进行自适应调整。
在HarmonyOS中,ArkTS提供了丰富的组件库和API,开发者可以利用这些资源来快速构建出功能丰富、界面美观的原生应用。同时,ArkTS还支持与Java和C++等语言的互操作,使得开发者可以在项目中灵活运用多种技术栈。
如果问题依旧没法解决请联系官网客服,官网地址是: https://www.itying.com/category-93-b0.html