华为仓颉鸿蒙HarmonyOS NEXT原生UI基础组件Span

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

构造函数
init(String)
public init(content: String)参数名
参数类型
必填
默认值
描述
content
String

文本内容。
init(CJResource)
public init(content: CJResource)参数名
参数类型
必填
默认值
描述
content
CJResource

文本内容。
init(PluralResource)
public init(content: PluralResource)参数名
参数类型
必填
默认值
描述
content
PluralResource

文本内容。
函数
decoration(TextDecorationType, Color)
public func decoration(decorationType!: TextDecorationType, color!: Color = Color.BLACK): This设置文本装饰线样式及其颜色。
参数名
参数类型
必填
默认值
描述
decorationType
TextDecorationType

文本装饰线样式。
color
Color

Color.BLACK
文本装饰线颜色。
decoration(TextDecorationType, UInt32)
public func decoration(decorationType!: TextDecorationType, color!: UInt32): This设置文本装饰线样式及其颜色。
参数名
参数类型
必填
默认值
描述
decorationType
TextDecorationType

文本装饰线样式。
color
UInt32

文本装饰线颜色。
decoration(TextDecorationType, CJResource)
public func decoration(decorationType!: TextDecorationType, color!: CJResource): This设置文本装饰线样式及其颜色。
参数名
参数类型
必填
默认值
描述
decorationType
TextDecorationType

文本装饰线样式。
color
CJResource

文本装饰线颜色。
textCase(TextCase)
public func textCase(value: TextCase): This设置文本大小写。
参数名
参数类型
必填
默认值
描述
textCase
TextCase

TextCase.Normal
设置文本大小写。
letterSpacing(Length)
public func letterSpacing(value: Length): This设置文本字符间距。
参数名
参数类型
必填
默认值
描述
value
Length

0.vp
设置文本字符间距。
letterSpacing(Float64)
public func letterSpacing(value: Float64): This设置文本字符间距。
参数名
参数类型
必填
默认值
描述
value
Float64

设置文本字符间距。
letterSpacing(Int64)
public func letterSpacing(value: Int64): This设置文本字符间距。
参数名
参数类型
必填
默认值
描述
value
Int64

0.vp
设置文本字符间距。
letterSpacing(CJResource)
public func letterSpacing(value: CJResource): This设置文本字符间距。
参数名
参数类型
必填
默认值
描述
value
CJResource

0.vp
设置文本字符间距。
通用属性/通用事件
通用属性:仅支持通用文本样式,不支持触摸热区设置。
通用事件:仅支持点击事件,由于Span组件无尺寸信息,因此点击事件返回的ClickEvent对象的target属性无效。
示例代码
import ohos.base.*
import ohos.component.*
import ohos.state_manage.*
import ohos.state_macro_manage.*
import std.collection.*

@Entry
@Component
class MyView {
func build() {
Flex(FlexParams(direction: FlexDirection.Column, alignItems: ItemAlign.Start,
justifyContent: FlexAlign.SpaceBetween)) {
Text("Basic Usage")
.fontSize(9)
.fontColor(0xCCCCCC)
Text() {
Span("This is the Span component")
.fontSize(12)
.textCase(TextCase.Normal)
.decoration(decorationType: TextDecorationType.None, color: Color.RED)
}

Text("Text Decoration")
.fontSize(9)
.fontColor(0xCCCCCC)
Text() {
Span("I am Underline-span")
.decoration(decorationType: TextDecorationType.Underline, color: Color.RED)
.fontSize(12)
}
Text() {
Span("I am LineThrough-span")
.decoration(decorationType: TextDecorationType.LineThrough, color: Color.RED)
.fontSize(12)
}
Text() {
Span("I am Overline-span")
.decoration(decorationType: TextDecorationType.Overline, color: Color.RED)
.fontSize(12)
}

Text("Text Case").fontSize(9).fontColor(0xCCCCCC)
Text() {
Span("I am Lower-span")
.textCase(TextCase.LowerCase)
.fontSize(12)
.decoration(decorationType: TextDecorationType.None, color: Color.RED)
}
Text() {
Span("I am Upper-span")
.textCase(TextCase.UpperCase)
.fontSize(12)
.decoration(decorationType: TextDecorationType.None, color: Color.RED)
}
Text() {
Span("I am LetterSpacing")
.fontSize(20)
.decoration(decorationType: TextDecorationType.None, color: Color.RED)
.letterSpacing(10)
}
Text() {
Span("I am Span1").fontSize(30)
.decoration(decorationType: TextDecorationType.None, color: Color.RED)
Span("I am Span2").fontSize(30)
.decoration(decorationType: TextDecorationType.None, color: Color.RED)
}
}
.width(100.percent)
.height(250)
.padding(left: 35, right: 35, top: 35)
}
}


如对您有帮助,帮忙点个“在看 、关注” 让更多的人受益~!
技术交流群可加wx“LB-9191” 备注cangjie

posted @ 2024-12-23 19:57  BisonLiu  阅读(31)  评论(0)    收藏  举报