HarmonyOS/OpenHarmony原生应用-ArkTS万能卡片组件Span

作为Text组件的子组件,用于显示行内文本的组件。无子组件

一、接口

Span(value: string | Resource)

从API version 9开始,该接口支持在ArkTS卡片中使用。

参数:

|-------|--------------------|----|-------|
| 参数名 | 参数类型 | 必填 | 参数描述 |
| value | string | Resource | 是 | 文本内容。 |

二、属性

通用属性方法仅支持通用文本样式。

|---------------|-----------------------------------------------------|-----------------------------------------------------------------------------------------------------------|
| 名称 | 参数类型 | 描述 |
| decoration | { type: TextDecorationType, color?: ResourceColor } | 设置文本装饰线样式及其颜色。 默认值:{ type: TextDecorationType.None color:Color.Black } 从API version 9开始,该接口支持在ArkTS卡片中使用。 |
| letterSpacing | number | string | 设置文本字符间距。取值小于0,字符聚集重叠,取值大于0且随着数值变大,字符间距越来越大,稀疏分布。 从API version 9开始,该接口支持在ArkTS卡片中使用。 |
| textCase | TextCase | 设置文本大小写。 默认值:TextCase.Normal 从API version 9开始,该接口支持在ArkTS卡片中使用。 |

三、事件

通用事件仅支持点击事件。

说明

由于Span组件无尺寸信息,因此点击事件返回的ClickEvent对象的target属性无效。

四、示例

// xxx.ets

@Entry

@Component

struct SpanExample {

build() {

Flex({ direction: FlexDirection.Column, alignItems: ItemAlign.Start, justifyContent: FlexAlign.SpaceBetween }) {

Text('Basic Usage').fontSize(9).fontColor(0xCCCCCC)

Text() {

Span('In Line')

Span(' Component')

Span(' !')

}

Text() {

Span('This is the Span component').fontSize(12).textCase(TextCase.Normal)

.decoration({ type: TextDecorationType.None, color: Color.Red })

}

// 文本横线添加

Text('Text Decoration').fontSize(9).fontColor(0xCCCCCC)

Text() {

Span('I am Underline-span').decoration({ type: TextDecorationType.Underline, color: Color.Red }).fontSize(12)

}

Text() {

Span('I am LineThrough-span')

.decoration({ type: TextDecorationType.LineThrough, color: Color.Red })

.fontSize(12)

}

Text() {

Span('I am Overline-span').decoration({ type: TextDecorationType.Overline, color: Color.Red }).fontSize(12)

}

// 文本字符间距

Text('LetterSpacing').fontSize(9).fontColor(0xCCCCCC)

Text() {

Span('span letter spacing')

.letterSpacing(0)

.fontSize(12)

}

Text() {

Span('span letter spacing')

.letterSpacing(-2)

.fontSize(12)

}

Text() {

Span('span letter spacing')

.letterSpacing(3)

.fontSize(12)

}

// 文本大小写展示设置

Text('Text Case').fontSize(9).fontColor(0xCCCCCC)

Text() {

Span('I am Lower-span').fontSize(12)

.textCase(TextCase.LowerCase)

.decoration({ type: TextDecorationType.None })

}

Text() {

Span('I am Upper-span').fontSize(12)

.textCase(TextCase.UpperCase)

.decoration({ type: TextDecorationType.None })

}

}.width('100%').height(250).padding({ left: 35, right: 35, top: 35 })

}

}

五、场景

适合做文本特效的各种卡片。

本文根据HarmonyOS官方文档整理

相关推荐
威哥爱编程1 小时前
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·音视频开发·直播
lqj_本人14 小时前
Flutter_Rust_Bridge:让 Flutter 稳定调用 Rust 的跨语言桥梁
harmonyos
贾伟康15 小时前
【HarmonyOS 7新能力|040】QUIC长连接工程封装:把接入逻辑放进可维护的分层结构
网络编程·harmonyos·arkts·quic·软件架构
hqzing15 小时前
Harmonybrew 仓库中的 gcc(GCC 16)和 llvm(LLVM 23)已经可用
harmonyos
昇腾知识体系16 小时前
昇腾 torchrec_npu Docker 镜像选择:CANN/PyTorch/torchrec 版本矩阵与启动参数
人工智能·华为·知识图谱