基础组件:
基础组件:
RichText
富文本组件,解析并显示HTML格式文本。
适用场景:
RichText组件适用于加载与显示一段HTML字符串,且不需要对显示效果进行较多自定义的应用场景。RichText组件仅支持有限的通用属性和事件。具体见属性与事件小节。
RichText组件底层复用了Web组件来提供基础能力,包括但不限于HTML页面的解析、渲染等。因此使用RichText组件需要遵循Web约束条件。常见典型约束如下:
移动设备的视口默认值大小为980px,默认值可以确保大部分网页在移动设备下可以正常浏览。如果RichText组件宽度低于这个值,content内部的HTML则可能会产生一个可以滑动的页面被RichText组件包裹。
不适用场景:
RichText组件不适用于对HTML字符串的显示效果进行较多自定义的应用场景。例如RichText组件不支持通过设置属性与事件,来修改背景颜色、字体颜色、字体大小、动态改变内容等。在这种情况下,推荐使用Web组件。
RichText组件比较消耗内存资源,而且有一些重复使用RichText组件的场景下,比如在List下循环重复使用RichText时,会出现卡顿、滑动响应慢等现象。在这种情况下,推荐使用RichEditor组件。
子组件
不包含子组件。
接口
RichText(content:string)
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
content | string | 是 | 表示HTML格式的字符串。 |
@State data:string= '<h1 style="text-align: center;">h1标题</h1>' +'<h1 style="text-align: center;"><i>h1斜体</i></h1>' +'<h1 style="text-align: center;"><u>h1下划线</u></h1>' +'<h2 style="text-align: center;">h2标题</h2>' +'<h3 style="text-align: center;">h3标题</h3>' +'<p style="text-align: center;">p常规</p><hr/>' +'<div style="width: 500px;height: 500px;border: 1px solid;margin: 0 auto;">' +'<p style="font-size: 35px;text-align: center;font-weight: bold; color: rgb(24,78,228)">字体大小35px,行高45px</p>' +'<p style="background-color: #e5e5e5;line-height: 45px;font-size: 35px;text-indent: 2em;">' +'<p>这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字这是一段文字</p>';@Builder richTextTest(){RichText("<h1>富文本</h1>")}
ScrollBar
滚动条组件ScrollBar,用于配合可滚动组件使用,如List、Grid、Scroll。
子组件
可以包含单个子组件。
接口
ScrollBar(value: ScrollBarOptions)
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
value | ScrollBarOptions | 是 | 滚动条组件参数。 |
ScrollBarOptions对象说明
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
scroller | Scroller | 是 | 可滚动组件的控制器。用于与可滚动组件进行绑定。 |
direction | ScrollBarDirection | 否 | 滚动条的方向,控制可滚动组件对应方向的滚动。 默认值:ScrollBarDirection.Vertical |
state | BarState | 否 | 滚动条状态。 默认值:BarState.Auto |
ScrollBarDirection枚举说明
名称 | 描述 |
---|---|
Vertical | 纵向滚动条。 |
Horizontal | 横向滚动条。 |
示列代码:
sc:Scroller=new Scroller()@State lists:number[]=[1,2,3,4,5,6,7,8,9,0,12,13,24]@Builder scrollBarTest(){Stack({alignContent:Alignment.TopEnd}) {Scroll(this.sc){Column(){ForEach(this.lists,(i:number)=>{Row(){Text(i.toString())}.width('90%').height(200).border({style:BorderStyle.Solid,width:1,color:'red'})})}}ScrollBar({scroller:this.sc})Text().width(20).backgroundColor('red').height(100)}.width(20)}
Search
搜索框组件,适用于浏览器的搜索内容输入框等应用场景。
子组件
无
接口
Search(options?: { value?: string, placeholder?: ResourceStr, icon?: string, controller?: SearchController })
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
value | string | 否 | 设置当前显示的搜索文本内容。 从API version 10开始,该参数支持$$双向绑定变量。 |
placeholder | ResourceStr10+ | 否 | 设置无输入时的提示文本。 |
icon | string | 否 | 设置搜索图标路径,默认使用系统搜索图标。 说明: icon的数据源支持本地图片和网络图片。 - 支持的图片格式包括png、jpg、bmp、svg、gif、pixelmap和heif。 - 支持Base64字符串。格式data:image/[png|jpeg|bmp|webp|heif];base64,[base64 data], 其中[base64 data]为Base64字符串数据。 如果与属性searchIcon同时设置,则searchIcon优先。 |
controller | SearchController | 否 | 设置Search组件控制器。 |
属性
除支持通用属性外,还支持以下属性:
searchButton
searchButton(value: string, option?: SearchButtonOptions)
设置搜索框末尾搜索按钮。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | string | 是 | 搜索框末尾搜索按钮文本内容。 |
option | SearchButtonOptions | 否 | 配置搜索框文本样式。 默认值: { fontSize: '16fp', color: '#ff3f97e9' } |
placeholderColor
placeholderColor(value: ResourceColor)
设置placeholder文本颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | placeholder文本颜色。 默认值:'#99182431'。 |
placeholderFont
placeholderFont(value?: Font)
设置placeholder文本样式,包括字体大小,字体粗细,字体族,字体风格。目前仅支持默认字体族。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Font | 否 | placeholder文本样式。 |
textFont
textFont(value?: Font)
设置搜索框内输入文本样式,包括字体大小,字体粗细,字体族,字体风格。目前仅支持默认字体族。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Font | 否 | 搜索框内输入文本样式。 |
textAlign
textAlign(value: TextAlign)
设置文本在搜索框中的对齐方式。目前支持的对齐方式有:Start、Center、End。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | TextAlign | 是 | 文本在搜索框中的对齐方式。 默认值:TextAlign.Start |
searchIcon
searchIcon(value: IconOptions)
设置左侧搜索图标样式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | IconOptions | 是 | 左侧搜索图标样式。 默认值: { size: '16vp', color: '#99ffffff', src: ' ' } |
cancelButton
cancelButton(value: { style?: CancelButtonStyle, icon?: IconOptions })
设置右侧清除按钮样式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | { style:? CancelButtonStyle, icon:? IconOptions } | 是 | 右侧清除按钮样式。 style:右侧图标显示状态。 icon:右侧图标。 默认值: { style:CancelButtonStyle.INPUT, icon: { size: '16vp', color: '#99ffffff', src: ' ' } } 当style为CancelButtonStyle.CONSTANT时,默认显示清除样式。 |
fontColor
fontColor(value: ResourceColor)
设置输入文本的字体颜色。文本通用属性fontSize、fontStyle、fontWeight和fontFamily在textFont属性中设置。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 输入文本的字体颜色。 默认值:'#FF182431'。 |
caretStyle
caretStyle(value: CaretStyle)
设置光标样式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | CaretStyle | 是 | 光标样式。 默认值: { width: '1.5vp', color: '#007DFF' } |
selectionMenuHidden
selectionMenuHidden(value: boolean)
设置长按输入框或者右键输入框时,是否弹出文本选择菜单。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | boolean | 是 | 长按输入框或者右键输入框时,是否弹出文本选择菜单。 默认值:false |
customKeyboard
customKeyboard(value: CustomBuilder, options?: KeyboardOptions)
设置自定义键盘。
当设置自定义键盘时,输入框激活后不会打开系统输入法,而是加载指定的自定义组件。
自定义键盘的高度可以通过自定义组件根节点的height属性设置,宽度不可设置,使用系统默认值。
自定义键盘采用覆盖原始界面的方式呈现,不会对应用原始界面产生压缩或者上提。
自定义键盘无法获取焦点,但是会拦截手势事件。
默认在输入控件失去焦点时,关闭自定义键盘,开发者也可以通过stopEditing方法控制键盘关闭。
如果设备支持拍摄输入,设置自定义键盘后,该输入框会不支持拍摄输入。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | CustomBuilder | 是 | 自定义键盘。 |
options12+ | KeyboardOptions | 否 | 设置自定义键盘是否支持避让功能。 |
type
type(value: SearchType)
设置输入框类型。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | SearchType | 是 | 输入框类型。 默认值:SearchType.Normal |
enterKeyType
enterKeyType(value: EnterKeyType)
设置输入法回车键类型。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | EnterKeyType | 是 | 输入法回车键类型。 默认值:EnterKeyType.Search |
lineHeight
lineHeight(value: number | string | Resource)
设置文本的文本行高,设置值不大于0时,不限制文本行高,自适应字体大小,number类型时单位为fp。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | string | Resource | 是 | 文本的文本行高。 |
decoration
decoration(value: TextDecorationOptions)
设置文本装饰线类型样式及其颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | TextDecorationOptions | 是 | 文本装饰线对象。 默认值:{ type: TextDecorationType.None, color: Color.Black, style: TextDecorationStyle.SOLID } |
letterSpacing12+
letterSpacing(value: number | string | Resource)
设置文本字符间距。设置该值为百分比时,按默认值显示。设置该值为0时,按默认值显示。
当取值为负值时,文字会发生压缩,负值过小时会将组件内容区大小压缩为0,导致无内容显示。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | string | Resource | 是 | 文本字符间距。 |
selectedBackgroundColor
selectedBackgroundColor(value: ResourceColor)
设置文本选中底板颜色。如果未设置不透明度,默认为20%不透明度。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 文本选中底板颜色。 默认为20%不透明度。 |
事件
除支持通用事件外,还支持以下事件:
onSubmit
onSubmit(callback: (value: string) => void)
点击搜索图标、搜索按钮或者按下软键盘搜索按钮时触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | string | 是 | 当前搜索框中输入的文本内容。 |
onChange
onChange(callback: (value: string) => void)
输入内容发生变化时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | string | 是 | 当前搜索框中输入的文本内容。 |
onCopy
onCopy(callback: (value: string) => void)
长按搜索框弹出剪切板之后,点击剪切板的复制按钮触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | string | 是 | 复制的文本内容。 |
onCut
onCut(callback: (value: string) => void)
长按搜索框弹出剪切板之后,点击剪切板的剪切按钮触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | string | 是 | 剪切的文本内容。 |
onPaste
onPaste(callback: (value: string, event: PasteEvent) => void)
长按搜索框弹出剪切板之后,点击剪切板的粘贴按钮触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | string | 是 | 粘贴的文本内容。 |
event11+ | PasteEvent | 否 | 用户自定义的粘贴事件。 |
onTextSelectionChange
onTextSelectionChange(callback: (selectionStart: number, selectionEnd: number) => void)
文本选择的位置发生变化时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
selectionStart | number | 是 | 文本选择区域起始位置,文本框中文字的起始位置为0。 |
selectionEnd | number | 否 | 文本选择区域结束位置。 |
onContentScroll
onContentScroll(callback: (totalOffsetX: number, totalOffsetY: number) => void)
文本内容滚动时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
totalOffsetX | number | 是 | 文本在内容区的横坐标偏移,单位px。 |
totalOffsetY | number | 否 | 文本在内容区的纵坐标偏移,单位px。 |
onEditChange
onEditChange(callback: Callback< boolean >)
输入状态变化时,触发该回调。有光标时为编辑态,无光标时为非编辑态。isEditing为true表示正在输入。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
isEditing | Callback< boolean > | 是 | 为true表示正在输入。 |
onWillInsert
onWillInsert(callback: Callback<InsertValue, boolean>)
在将要输入时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
callback | Callback<InsertValue, boolean> | 是 | 在将要输入时调用的回调。 在返回true时,表示正常插入,返回false时,表示不插入。 在预上屏操作时,该回调不触发。 仅支持系统输入法输入的场景。 |
onDidInsert
onDidInsert(callback: Callback<InsertValue>)
在输入完成时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
callback | Callback<InsertValue> | 是 | 在输入完成时调用的回调。 仅支持系统输入法输入的场景。 |
onWillDelete
onWillDelete(callback: Callback<DeleteValue, boolean>)
在将要删除时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
callback | Callback<DeleteValue, boolean> | 是 | 在将要删除时调用的回调。 在返回true时,表示正常删除,返回false时,表示不删除。 在预上屏删除操作时,该回调不触发。 仅支持系统输入法输入的场景。 |
onDidDelete
onDidDelete(callback: Callback<DeleteValue>)
在删除完成时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
callback | Callback<DeleteValue> | 是 | 在删除完成时调用的回调。 仅支持系统输入法输入的场景。 |
SearchController
Search组件的控制器继承自TextContentControllerBase。
caretPosition
caretPosition(value: number): void
设置输入光标的位置。
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
value | number | 是 | 从字符串开始到光标所在位置的长度。 |
stopEditing
stopEditing(): void
退出编辑态。
setTextSelection
setTextSelection(selectionStart: number, selectionEnd: number, options?: SelectionOptions): void;
组件在获焦状态下,调用该接口设置文本选择区域并高亮显示,且只有在selectionStart小于selectionEnd时,文字才会被选取、高亮显示。
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
selectionStart | number | 是 | 文本选择区域起始位置,文本框中文字的起始位置为0。 当selectionStart小于0时、按照0处理;当selectionStart大于文字最大长度时、按照文字最大长度处理。 |
selectionEnd | number | 是 | 文本选择区域结束位置。 当selectionEnd小于0时、按照0处理;当selectionEnd大于文字最大长度时、按照文字最大长度处理。 |
options | SelectionOptions | 否 | 选中文字时的配置。 默认值:MenuPolicy.DEFAULT。 |
Select
提供下拉选择菜单,可以让用户在多个选项之间选择。
子组件
无
接口
Select(options: Array<SelectOption>)
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
options | Array<SelectOption> | 是 | 设置下拉选项。 |
SelectOption对象说明
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
value | ResourceStr | 是 | 下拉选项内容。 |
icon | ResourceStr | 否 | 下拉选项图片。 |
symbolIcon12+ | SymbolGlyphModifier | 否 | 下拉选项Symbol图片。 symbolIcon优先级高于icon。 |
属性
除支持通用属性外,还支持以下属性:
selected
selected(value: number | Resource)
设置下拉菜单初始选项的索引,第一项的索引为0。当不设置selected属性或设置异常值时,默认选择值为-1,菜单项不选中;当设置为undefined、null时,选中第一项。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | Resource11+ | 是 | 下拉菜单初始选项的索引。 |
value
value(value: ResourceStr)
设置下拉按钮本身的文本内容。当菜单选中时默认会替换为菜单项文本内容。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceStr11+ | 是 | 下拉按钮本身的文本内容。 |
controlSize
controlSize(value: ControlSize)
设置Select组件的尺寸。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ControlSize11+ | 是 | Select组件的尺寸。 默认值:ControlSize.NORMAL |
controlSize、width、height接口作用优先级:
1)如果开发者只设置了width和height,当文字大小设置的是比较大的值的时候,文字超出组件大小,且以省略号方式显示;
2)如果开发者只设置了controlSize,没有设置width和height,组件宽高自适应文字,文字不超出组件,并设置最小宽度minWidth和最小高度minHeight;
3)如果controlSize、width、height接口都设置了,width和height设置的值生效,但如果width和height设置的值小于controlSize设置的最小宽度minWidth和最小高度minHeight,width和height设置的值不生效,宽高仍保持controlSize设置的最小宽度minWidth和最小高度minHeight。
divider
divider(options: Optional<DividerOptions> | null)
设置分割线样式,不设置该属性则按“默认值”展示分割线。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
options | Optional<DividerOptions> | null | 是 | 1.设置DividerOptions,则按设置的样式显示分割线。 默认值: { strokeWidth: '1px' , color: '#33182431' } 2.设置为null时,不显示分割线。 3.strokeWidth设置过宽时,会覆盖文字。分割线会从每一个Item底部开始,同时向上向下画分割线。 4.startMargin和endMargin的默认值与不设置divider属性时的分割线样式保持一致。startMargin和endMargin的和与optionWidth的值相等时,不显示分割线。 startMargin和endMargin的和超过optionWidth的值时,按照默认样式显示分割线。 |
font
font(value: Font)
设置下拉按钮本身的文本样式。当size为0的时候,文本不显示,当size为负值的时候,文本的size按照默认值显示。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Font | 是 | 下拉按钮本身的文本样式。 API Version 11及以前默认值: { size: '16fp', weight: FontWeight.Medium } 从API Version 12以后, 如果设置controlSize的值为:controlSize.SMALL,size默认值是'14fp',否则还是'16fp'。 |
fontColor
fontColor(value: ResourceColor)
设置下拉按钮本身的文本颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 下拉按钮本身的文本颜色。 默认值:'#E5182431' |
selectedOptionBgColor
selectedOptionBgColor(value: ResourceColor)
设置下拉菜单选中项的背景色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 下拉菜单选中项的背景色。 默认值:'#33007DFF' |
selectedOptionFont
selectedOptionFont(value: Font)
设置下拉菜单选中项的文本样式。当size为0的时候,文本不显示,当size为负值的时候,文本的size按照默认值显示。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Font | 是 | 下拉菜单选中项的文本样式。 默认值: { size: '16fp', weight: FontWeight.Regular } |
selectedOptionFontColor
selectedOptionFontColor(value: ResourceColor)
设置下拉菜单选中项的文本颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 下拉菜单选中项的文本颜色。 默认值:'#ff007dff' |
optionBgColor
optionBgColor(value: ResourceColor)
设置下拉菜单项的背景色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 下拉菜单项的背景色。 默认值:'#ffffffff' |
optionFont
optionFont(value: Font)
设置下拉菜单项的文本样式。当size为0的时候,文本不显示,当size为负值的时候,文本的size按照默认值显示。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Font | 是 | 下拉菜单项的文本样式。 默认值: { size: '16fp', weight: FontWeight.Regular } |
optionFontColor
optionFontColor(value: ResourceColor)
设置下拉菜单项的文本颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 下拉菜单项的文本颜色。 默认值:'#ff182431' |
space
space(value: Length)
设置下拉菜单项的文本与箭头之间的间距。不支持设置百分比。设置为null、undefined,或者小于等于8的值,取默认值。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Length | 是 | 下拉菜单项的文本与箭头之间的间距。 默认值:8 |
arrowPosition
arrowPosition(value: ArrowPosition)
设置下拉菜单项的文本与箭头之间的对齐方式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ArrowPosition | 是 | 下拉菜单项的文本与箭头之间的对齐方式。 默认值:ArrowPosition.END |
menuAlign
menuAlign(alignType: MenuAlignType, offset?: Offset)
设置下拉按钮与下拉菜单间的对齐方式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
alignType | MenuAlignType | 是 | 对齐方式类型。 默认值:MenuAlignType.START |
offset | Offset | 否 | 按照对齐类型对齐后,下拉菜单相对下拉按钮的偏移量。 默认值:{dx: 0, dy: 0} |
optionWidth
optionWidth(value: Dimension | OptionWidthMode )
设置下拉菜单项的宽度,不支持设置百分比。OptionWidthMode类型为枚举类型,OptionWidthMode决定下拉菜单是否继承下拉按钮宽度。
当设置为undefined、null、负数时,属性不生效,菜单项宽度设为默认值,即菜单默认宽度为2栅格。
当菜单项设置宽度小于最小宽度56vp时,菜单宽度回弹至2栅格。正常值范围大于等于0。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Dimension | OptionWidthMode | 是 | 下拉菜单项的宽度。 |
optionHeight
optionHeight(value: Dimension)
设置下拉菜单显示的最大高度,不支持设置百分比。下拉菜单的默认最大高度是屏幕可用高度的80%,设置的菜单最大高度不能超过默认最大高度。
当设置为undefined、null、负数与零时,属性不生效,下拉菜单最大高度设为默认值,即下拉菜单最大高度默认值为屏幕可用高度的80%。
正常值范围大于0。如果下拉菜单所有选项的实际高度没有设定的高度大,下拉菜单的高度按实际高度显示。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Dimension | 是 | 下拉菜单显示的最大高度。 |
menuBackgroundColor
menuBackgroundColor(value: ResourceColor)
设置下拉菜单的背景色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 下拉菜单的背景色。 默认值:Color.Transparent |
menuBackgroundBlurStyle
menuBackgroundBlurStyle(value: BlurStyle)
设置下拉菜单的背景模糊材质。
OptionWidthMode11+枚举说明
元服务API: 从API version 12开始,该接口支持在元服务中使用。
名称 | 描述 |
---|---|
FIT_CONTENT | 设置该值时,下拉菜单宽度按默认2栅格显示。 |
FIT_TRIGGER | 设置下拉菜单继承下拉按钮宽度。 |
ArrowPosition10+枚举说明
元服务API: 从API version 11开始,该接口支持在元服务中使用。
名称 | 描述 |
---|---|
END10+ | 文字在前,箭头在后。 |
START10+ | 箭头在前,文字在后。 |
MenuAlignType10+枚举说明
元服务API: 从API version 11开始,该接口支持在元服务中使用。
名称 | 描述 |
---|---|
START | 按照语言方向起始端对齐。 |
CENTER | 居中对齐。 |
END | 按照语言方向末端对齐。 |
MenuItemConfiguration12+对象说明
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceStr | 是 | 下拉菜单项的文本内容。 |
icon | ResourceStr | 否 | 下拉菜单项的图片内容。 |
symbolIcon12+ | SymbolGlyphModifier | 否 | 下拉选项Symbol图片内容。 |
selected | boolean | 是 | 下拉菜单项是否被选中。 默认值:false |
index | number | 是 | 下拉菜单项的索引。 |
triggerSelect | (index: number, value: string) => void | 是 | 下拉菜单选中某一项的回调函数。 index: 选中菜单项的索引。 value: 选中菜单项的文本。 说明: index会赋值给事件onSelect回调中的索引参数; value会返回给Select组件显示,同时会赋值给事件onSelect回调中的文本参数。 |
事件
onSelect
onSelect(callback: (index: number, value: string) => void)
下拉菜单选中某一项的回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
index | number | 是 | 选中项的索引。 |
value | string | 是 | 选中项的值。 |
示例代码:
class MySelect implements ContentModifier<MenuItemConfiguration>{applyContent(): WrappedBuilder<[MenuItemConfiguration]> {return wrapBuilder(sel)}
}@Builder function sel(config:MenuItemConfiguration){Row(){Text(config.index+''+config.value)if (config.symbolIcon){SymbolGlyph().attributeModifier(config.symbolIcon).fontSize(24).fontColor(['red'])}else {Image(config.icon).height(30)}if (config.selected){SymbolGlyph($r('sys.symbol.hand_thumbsup_fill')).fontColor(['#CDD8FF'])}}.width('80%').height(30).backgroundColor(config.selected?Color.Orange:Color.Transparent).onClick(()=>{config.triggerSelect(config.index,config.value.toString())})
}@Builder jp(){Row().width('100%').height(300).backgroundColor('#89C2D1')}@Builder searchTest(){Search({value:'张三',placeholder:'搜输入搜索内容',controller:this.searchController// icon:'/img/t1.png'}).searchButton('搜索',{fontSize:18,fontColor:'red'}).placeholderColor('red').placeholderFont({size:18,style:1,weight:700}).textFont({size:18,weight:900,style:1}).textAlign(TextAlign.Center).searchIcon({size:20,src:$r('sys.symbol.circle_below_small_triangle'),color:'red'}).cancelButton({style:CancelButtonStyle.INPUT,icon:{size:20,color:'red',src:$r('sys.symbol.cinema')}}).fontColor('red').caretStyle({color:'red',width:5})// .selectionMenuHidden(true)// .customKeyboard(this.jp(),{supportAvoidance:true}).type(SearchType.NORMAL)//搜索框类型.enterKeyType(EnterKeyType.Search)//回车键类型.lineHeight(-30)//行高.decoration({type:TextDecorationType.Underline,color:'blue',style:TextDecorationStyle.DOUBLE})// 下划线.letterSpacing(10)//字符间距.selectedBackgroundColor('red')//选中之后底板颜色.onSubmit((val)=>{//搜索按下console.log(val)//todo 跳转搜索结果}).onChange(val=>console.log(val)).onCopy(val=>console.log('复制的内容:'+val)).onCut(val=>console.log('剪切的内容:'+val)).onPaste(val=>console.log('粘贴的内容:'+val)).onTextSelectionChange((s,e)=>console.log(`开始下标:${s},结束下标:${e}`)).onContentScroll((x,y)=>console.log(`x:${x},y:${y}`)).onEditChange(isEdit=>console.log(isEdit?'输入中':'输入完成')).onWillInsert((iv)=>(iv.insertValue==='.'?false:true)).onDidInsert(val=>console.log('输入的内容:'+val.insertValue)).onDidDelete(val=>console.log('删除的内容:'+val.deleteValue)).onWillDelete((iv)=>(iv.deleteValue==='三'?false:true))Row(){Button('光标').onClick(()=>{this.searchController.caretPosition(1)})Button('退出编辑').onClick(()=>{this.searchController.stopEditing()})Button('高亮').onClick(()=>{this.searchController.setTextSelection(0,10,{menuPolicy:MenuPolicy.DEFAULT})})}}
sym1:SymbolGlyphModifier=new SymbolGlyphModifier($r('sys.symbol.circle_on_circle_filled'))@Builder selectTest(){Select([{value:'北京',icon:$r('app.media.t7')},{value:'上海',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.circle_lefthalf_inset_filled'))},{value:'天津',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.circle_grid_2x2'))},{value:'石家庄',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.circle_below_plus_shield'))},{value:'海南',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.checkmark_circle'))},{value:'台湾',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.chevron_down_2_viewfinder'))},]).height(20).width(280).selected(1).value('--地址--').constraintSize({minWidth:120,maxWidth:200}).divider({strokeWidth:1,color:'#99D9EA',startMargin:10,endMargin:10}).fontColor('#FFC5D9').font({size:18,style:FontStyle.Italic,weight:900}).selectedOptionBgColor('#E0E6FF').selectedOptionFont({size:20}).selectedOptionFontColor(Color.White).optionBgColor('#D7F8FF').optionFontColor(Color.Black).space(10).arrowPosition(ArrowPosition.START).menuAlign(MenuAlignType.END,{dx:10,dy:10}).optionWidth(200).optionHeight(300).menuBackgroundColor('#E8FFF8').menuBackgroundBlurStyle(BlurStyle.Thin).onSelect((index,val)=>{console.log(`索引:${index},值:${val}`)})Select([{value:'北京',icon:$r('app.media.t7')},{value:'上海',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.circle_lefthalf_inset_filled'))},{value:'天津',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.circle_grid_2x2'))},{value:'石家庄',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.circle_below_plus_shield'))},{value:'海南',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.checkmark_circle'))},{value:'台湾',symbolIcon:new SymbolGlyphModifier($r('sys.symbol.chevron_down_2_viewfinder'))},]).value('--地址--').menuItemContentModifier(new MySelect())}
Slider
滑动条组件,通常用于快速调节设置值,如音量调节、亮度调节等应用场景。
子组件
无
接口
Slider(options?: SliderOptions)
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
options | SliderOptions | 否 | 配置滑动条的参数。 |
SliderOptions对象说明
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | 否 | 当前进度值。 默认值:与参数min的取值一致。 从API version 10开始,该参数支持$$双向绑定变量。 |
min | number | 否 | 设置最小值。 默认值:0 |
max | number | 否 | 设置最大值。 默认值:100 说明: min >= max异常情况,min取默认值0,max取默认值100。 value不在[min, max]范围之内,取min或者max,靠近min取min,靠近max取max。 |
step | number | 否 | 设置Slider滑动步长。 默认值:1 取值范围:[0.01, max] 说明: 若设置的step值小于0或大于max值时,则按默认值显示。 |
style | SliderStyle | 否 | 设置Slider的滑块与滑轨显示样式。 默认值:SliderStyle.OutSet |
direction8+ | Axis | 否 | 设置滑动条滑动方向为水平或竖直方向。 默认值:Axis.Horizontal |
reverse8+ | boolean | 否 | 设置滑动条取值范围是否反向,横向Slider默认为从左往右滑动,竖向Slider默认为从上往下滑动。 默认值:false |
SliderStyle枚举说明
卡片能力: 从API version 9开始,该接口支持在ArkTS卡片中使用。
名称 | 描述 |
---|---|
OutSet | 滑块在滑轨上。 元服务API: 从API version 11开始,该接口支持在元服务中使用。 |
InSet | 滑块在滑轨内。 元服务API: 从API version 11开始,该接口支持在元服务中使用。 |
NONE12+ | 无滑块 |
属性
支持除触摸热区以外的通用属性。
blockColor
blockColor(value: ResourceColor)
设置滑块的颜色。
当滑块形状设置为SliderBlockType.DEFAULT时,blockColor可设置默认圆形滑块颜色。
当滑块形状设置为SliderBlockType.IMAGE时,滑块无填充,设置blockColor不生效。
当滑块形状设置为SliderBlockType.SHAPE时,blockColor可设置自定义形状的填充颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 滑块的颜色。 默认值:'#ffffff' |
trackColor
trackColor(value: ResourceColor | LinearGradient)
设置滑轨的背景颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | LinearGradient12+ | 是 | 滑轨的背景颜色。 说明: 设置渐变色时,若颜色断点颜色值为非法值或者渐变色断点为空时,渐变色不起效果。 默认值:'#19182431' 该接口中的LinearGradient类型不支持在元服务中使用。 |
selectedColor
selectedColor(value: ResourceColor)
设置滑轨的已滑动部分颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 滑轨的已滑动部分颜色。 默认值:'#007dff' |
showSteps
showSteps(value: boolean)
设置当前是否显示步长刻度值。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | boolean | 是 | 当前是否显示步长刻度值。 默认值:false |
showTips
showTips(value: boolean, content?: ResourceStr)
设置滑动时是否显示气泡提示。
当direction的值为Axis.Horizontal时,tip显示在滑块上方,如果上方空间不够,则在下方显示。值为Axis.Vertical时,tip显示在滑块左边,如果左边空间不够,则在右边显示。不设置周边边距或者周边边距比较小时,tip会被截断。
tip的绘制区域为Slider自身节点的overlay。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | boolean | 是 | 滑动时是否显示气泡提示。 默认值:false |
content10+ | ResourceStr | 否 | 气泡提示的文本内容,默认显示当前百分比。 |
trackThickness
trackThickness(value: Length)
设置滑轨的粗细。设置为小于等于0的值时,取默认值。
为保证滑块和滑轨的SliderStyle样式,blockSize跟随trackThickness同比例增减。
当style为SliderStyle.OutSet时,trackThickness :blockSize = 1 :4,当style为SliderStyle.InSet时,trackThickness :blockSize = 5 :3。
在变更trackThickness过程中,若trackThickness的大小或者blockSize的大小超过slider组件的width或者height(SliderStyle.OutSet时可能trackThickness没超过,但是blockSize超过了),取默认值。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Length | 是 | 滑轨的粗细。 默认值:当参数style的值设置SliderStyle.OutSet 时为 4.0vp,SliderStyle.InSet时为20.0vp。 |
blockBorderColor
blockBorderColor(value: ResourceColor)
设置滑块描边颜色。
当滑块形状设置为SliderBlockType.DEFAULT时,blockBorderColor可设置默认圆形滑块描边颜色。
当滑块形状设置为SliderBlockType.IMAGE时,滑块无描边,设置blockBorderColor不生效。
当滑块形状设置为SliderBlockType.SHAPE时,blockBorderColor可设置自定义形状中线的颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 滑块描边颜色。 默认值:'#00000000' |
blockBorderWidth
blockBorderWidth(value: Length)
设置滑块描边粗细。
当滑块形状设置为SliderBlockType.DEFAULT时,blockBorderWidth可设置默认圆形滑块描边粗细。
当滑块形状设置为SliderBlockType.IMAGE时,滑块无描边,设置blockBorderWidth不生效。
当滑块形状设置为SliderBlockType.SHAPE时,blockBorderWidth可设置自定义形状中线的粗细。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Length | 是 | 滑块描边粗细。 |
stepColor
stepColor(value: ResourceColor)
设置刻度颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 刻度颜色。 默认值:'#19182431' |
trackBorderRadius
trackBorderRadius(value: Length)
设置底板圆角半径。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Length | 是 | 底板圆角半径。 默认值:'2vp' |
selectedBorderRadius
selectedBorderRadius(value: Dimension)
设置已滑动部分(高亮)圆角半径。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Dimension | 是 | 已选择部分圆角半径。 默认值:style值为SliderStyle.InSet或SliderStyle.OutSet时,跟随底板圆角;style值为SliderStyle.NONE时,为0。 |
blockSize
blockSize(value: SizeOptions)
设置滑块大小。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | SizeOptions | 是 | 滑块大小。 默认值:当参数style的值设置为SliderStyle.OutSet时为{width: 16, height: 16},当参数style的值设置为SliderStyle.InSet时为{width: 12, height: 12}。 当设置的blockSize的宽高值不相等时,取较小值的尺寸,当设置的宽高值中有一个或两个都小于等于0的时候,取默认值。 |
blockStyle
blockStyle(value: SliderBlockStyle)
设置滑块形状参数。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | SliderBlockStyle | 是 | 滑块形状参数。 默认值:SliderBlockType.DEFAULT,使用圆形滑块。 |
stepSize
stepSize(value: Length)
设置刻度大小(直径)。当值为0时,刻度点不显示,当值小于0时,取默认值。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Length | 是 | 刻度大小(直径)。 默认值:'4vp' |
sliderInteractionMode
sliderInteractionMode(value: SliderInteraction)
设置用户与滑动条组件交互方式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | SliderInteraction | 是 | 用户与滑动条组件交互方式。 默认值:SliderInteraction.SLIDE_AND_CLICK。 |
minResponsiveDistance
minResponsiveDistance(value: number)
设置滑动响应的最小距离。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | 是 | 设置滑动响应的最小距离,滑动超过此距离后才响应使滑块滑动。 说明: 单位与参数min和max一致。 当value小于0、大于MAX-MIN或非法值时,取默认值。 默认值:0。 |
contentModifier
contentModifier(modifier: ContentModifier<SliderConfiguration>)
定制Slider内容区的方法。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
modifier | ContentModifier<SliderConfiguration> | 是 | 在Slider组件上,定制内容区的方法。 modifier: 内容修改器,开发者需要自定义class实现ContentModifier接口。 |
slideRange
slideRange(value: SlideRange)
设置有效滑动区间。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | SlideRange | 是 | 设置有效滑动区间 |
事件
支持通用事件外,还支持以下事件:
onChange
onChange(callback: (value: number, mode: SliderChangeMode) => void)
Slider拖动或点击时触发事件回调。
Begin和End状态当手势点击时都会触发,Moving和Click状态当value值发生变化时触发。
当连贯动作为拖动动作时,不触发Click状态。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | 是 | 当前滑动进度值,变化范围为对应步长steps数组。若返回值有小数,可使用number.toFixed()方法将数据处理为预期的精度。 |
mode | SliderChangeMode | 是 | 事件触发的相关状态值。 |
示例代码:
class MySlider implements ContentModifier<SliderConfiguration>{applyContent(): WrappedBuilder<[SliderConfiguration]> {return wrapBuilder(sl)}showSlider:boolean=truesliderChangeMode:number=0constructor(showSlider: boolean,sliderChangeMode:number) {this.showSlider = showSliderthis.sliderChangeMode = sliderChangeMode}
}@Builder function sl(config:SliderConfiguration){Column(){Progress({value:config.value,type:ProgressType.Ring})Button('增加').onClick(()=>{config.value+=10config.triggerChange(config.value,0)})Button('添加').onClick(()=>{config.value+=10config.triggerChange(config.value,1)})}
}@Builder sliderTest(){Slider({value:30,min:0,max:100,step:10,style:SliderStyle.InSet,direction:Axis.Horizontal,reverse:false,}).blockColor('#F5D9F2')//滑块的颜色.blockSize({height:20,width:20}).blockBorderColor('#CADBE6').blockBorderWidth(1)// .blockStyle({type:SliderBlockType.IMAGE,image:$r('app.media.t7')}).blockStyle({type:SliderBlockType.IMAGE,image:$r('app.media.t7')})// .blockStyle({ type: SliderBlockType.SHAPE, shape: new Path({ commands: 'M60 60 M30 30 L15 56 L45 56 Z' }) }).trackColor(Color.Orange).selectedColor('#D4E6DF').showSteps(true).showTips(true).trackThickness(50).stepColor(Color.Brown).trackBorderRadius(10).selectedBorderRadius(10).stepSize(8).sliderInteractionMode(SliderInteraction.SLIDE_AND_CLICK ).minResponsiveDistance(20).slideRange({from:10,to:50,}).onChange((v,m)=>{console.log(`当前值${v}`)if (m==0) {console.log('按下')}else if (m==1){console.log('移动')}else if (m==2){console.log('弹起')}else if (m==3){console.log('点击')}})Slider({value:30,min:0,max:100,step:10}).contentModifier(new MySlider(true,0))}
Span
作为Text、ContainerSpan组件的子组件,用于显示行内文本的组件。
子组件
无
接口
Span(value: string | Resource)
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
value | string | Resource | 是 | 文本内容。 |
属性
属性继承自BaseSpan,通用属性方法仅支持文本通用。
decoration
decoration(value: DecorationStyleInterface)
设置文本装饰线样式及其颜色。
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
value | DecorationStyleInterface12+ | 是 | 文本装饰线样式对象。 默认值: { type: TextDecorationType.None, color: Color.Black, style: TextDecorationStyle.SOLID } 说明: style参数不支持卡片能力。 |
letterSpacing
letterSpacing(value: number | string)
设置文本字符间距。取值小于0,字符聚集重叠,取值大于0且随着数值变大,字符间距越来越大,稀疏分布。
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
value | number | string | 是 | 文本字符间距。 |
textCase
textCase(value: TextCase)
设置文本大小写。
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
value | TextCase | 是 | 文本大小写。 默认值:TextCase.Normal |
lineHeight
lineHeight(value: Length)
设置文本行高。
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
value | Length | 是 | 文本行高。 |
font
font(value: Font)
设置文本样式。包括字体大小、字体粗细、字体族和字体风格。
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
value | Font | 是 | 文本样式。 |
textShadow
textShadow(value: ShadowOptions | Array<ShadowOptions>)
设置文字阴影效果。该接口支持以数组形式入参,实现多重文字阴影。不支持fill字段, 不支持智能取色模式。
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
value | ShadowOptions | Array<ShadowOptions> | 是 | 文字阴影效果。 |
事件
通用事件仅支持点击事件。
textBackgroundStyle
textBackgroundStyle(style: TextBackgroundStyle)
设置背景样式。作为ContainerSpan的子组件时可以继承它的此属性值,优先使用其自身的此属性。
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
style | TextBackgroundStyle | 是 | 背景样式。 默认值: { color: Color.Transparent, radius: 0 } |
baselineOffset
baselineOffset(value: LengthMetrics)
设置Span基线的偏移量。此属性与父组件的baselineOffset是共存的。
参数:
参数名 | 类型 | 必填 | 描述 |
---|---|---|---|
value | LengthMetrics | 是 | 设置Span基线的偏移量,设置该值为百分比时,按默认值显示。 正数内容向上偏移,负数向下偏移。 默认值:0 在ImageSpan中,设置为非0时会导致设置verticalAlign失效。 |
示例代码:
@Builder spanTest(){Text(){Span('文本子组件1').decoration({style:TextDecorationStyle.SOLID,type:TextDecorationType.Overline,color:'red'})Span('文本子组件2').letterSpacing(10)Span('AbcDef').textCase(TextCase.UpperCase).textBackgroundStyle({color:Color.Orange,radius:0,}).baselineOffset(LengthMetrics.vp(10))Span('文本组件4').lineHeight(40).font({size:20,style:FontStyle.Italic}).fontColor('#AACCE6').textShadow({radius:10,offsetX:10,offsetY:10,color:'#E6CED5'})}}
Stepper
步骤导航器组件,适用于引导用户按照步骤完成任务的导航场景。
子组件
仅能包含子组件StepperItem。
接口
Stepper(value?: { index?: number })
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
value | { index?: number } | 否 | 设置步骤导航器当前显示StepperItem的索引值。 默认值:0 从API version 10开始,该参数支持$$双向绑定变量。 |
属性
无
StepperItem
用作Stepper组件的页面子组件。
子组件
支持单个子组件。
接口
StepperItem()
属性
prevLabel
prevLabel(value: string)
设置左侧文本按钮内容,第一页没有左侧文本按钮,当步骤导航器大于一页时,除第一页外默认值都为“返回”。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | string | 是 | 左侧文本按钮内容。 |
nextLabel
nextLabel(value: string)
设置右侧文本按钮内容,最后一页默认值为“开始”,其余页默认值为“下一步”。
status
status(value?: ItemState)
设置步骤导航器nextLabel的显示状态。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ItemState | 否 | 步骤导航器nextLabel的显示状态。 默认值:ItemState.Norm |
ItemState枚举说明
名称 | 描述 |
---|---|
Normal | 正常状态,右侧文本按钮正常显示,可点击进入下一个StepperItem。 |
Disabled | 不可用状态,右侧文本按钮灰度显示,不可点击进入下一个StepperItem。 |
Waiting | 等待状态,右侧文本按钮不显示,显示等待进度条,不可点击进入下一个StepperItem。 |
Skip | 跳过状态,右侧文本按钮默认显示“跳过”,此时可在Stepper的onSkip回调中自定义相关逻辑。 |
onSkip
onSkip(callback: () => void)
当前显示的StepperItem状态为ItemState.Skip时,nextLabel被点击时触发该回调。
onNext
onNext(callback: (index: number, pendingIndex: number) => void)
点击StepperItem的nextLabel切换下一步骤时,当前页面不为步骤导航器最后一个StepperItem且ItemState属性为Normal时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
index | number | 是 | 当前步骤页索引值。 |
pendingIndex | number | 是 | 下一步骤页索引值。 |
onPrevious
onPrevious(callback: (index: number, pendingIndex: number) => void)
点击StepperItem的prevLabel切换上一步骤时触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
index | number | 是 | 当前步骤页索引值。 |
pendingIndex | number | 是 | 上一步骤页索引值。 |
onChange
onChange(callback: (prevIndex: number, index: number) => void)
点击当前StepperItem的prevLabel进行步骤切换时触发该回调;或点击当前StepperItem的nextLabel,当前页面不为步骤导航器最后一个StepperItem且ItemState属性为Normal时,触发该回调。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
prevIndex | number | 是 | 切换前的步骤页索引值。 |
index | number | 是 | 切换后的步骤页(前一页或者下一页)索引值。 |
示例代码:
@State selectIndex:number=0@Builder stepperTest(){Stepper({index:this.selectIndex}){StepperItem(){Column().height('90%').width('100%').backgroundColor(Color.Orange)}.nextLabel('下一页')StepperItem(){Column().height('90%').width('100%').backgroundColor(Color.Pink)}.prevLabel('上一页')// .nextLabel('下一页').status(ItemState.Skip)StepperItem(){Column().height('90%').width('100%').backgroundColor('#E6E5D1')}.prevLabel('上一页').nextLabel('完成')}.onClick(()=>{console.log('完成注册')}).onSkip(()=>{console.log('页面跳过')this.selectIndex=2}).onNext((index,pendingIndex)=>{console.log(`当前是第${index+1}页,下一页${pendingIndex+1}页`)}).onPrevious((index,pendingIndex)=>{console.log(`当前是第${index+1}页,上一页${pendingIndex+1}页`)})}
SymbolGlyph
显示图标小符号的组件。
子组件
不支持子组件。
接口
SymbolGlyph(value: Resource)
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
value | Resource | 是 | SymbolGlyph组件的资源名,如 $r('sys.symbol.ohos_wifi')。 |
属性
支持通用属性,不支持文本通用属性,仅支持以下特有属性:
fontColor
fontColor(value: Array<ResourceColor>)
设置SymbolGlyph组件颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Array<ResourceColor> | 是 | SymbolGlyph组件颜色。 默认值:不同渲染策略下默认值不同。 |
fontSize
fontSize(value: number | string | Resource)
设置SymbolGlyph组件大小。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | string | Resource | 是 | SymbolGlyph组件大小。 默认值:系统默认值。 |
fontWeight
fontWeight(value: number | FontWeight | string)
设置SymbolGlyph组件粗细。number类型取值[100,900],取值间隔为100,默认为400,取值越大,字体越粗。string类型仅支持number类型取值的字符串形式,例如“400”,以及“bold”、“bolder”、“lighter”、“regular” 、“medium”分别对应FontWeight中相应的枚举值。
sys.symbol.ohos_lungs图标不支持设置fontWeight。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | string | FontWeight | 是 | SymbolGlyph组件粗细。 默认值:FontWeight.Normal |
renderingStrategy
renderingStrategy(value: SymbolRenderingStrategy)
设置SymbolGlyph组件渲染策略。$r('sys.symbol.ohos_*')中引用的资源仅ohos_folder_badge_plus支持分层与多色模式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | SymbolRenderingStrategy | 是 | SymbolGlyph组件渲染策略。 默认值:SymbolRenderingStrategy.SINGLE |
effectStrategy
effectStrategy(value: SymbolEffectStrategy)
设置SymbolGlyph组件动效策略。$r('sys.symbol.ohos_*')中引用的资源仅ohos_wifi支持层级动效模式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | SymbolEffectStrategy | 是 | SymbolGlyph组件动效策略。 默认值:SymbolEffectStrategy.NONE |
symbolEffect
symbolEffect(symbolEffect: SymbolEffect, isActive?: boolean)
设置SymbolGlyph组件动效策略及播放状态。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
symbolEffect | SymbolEffect|ScaleSymbolEffect|HierarchicalSymbolEffect| AppearSymbolEffect|DisappearSymbolEffect|BounceSymbolEffect| ReplaceSymbolEffect|PulseSymbolEffect | 是 | SymbolGlyph组件动效策略。 默认值:SymbolEffect |
isActive | boolean | 否 | SymbolGlyph组件动效播放状态。 默认值:false |
symbolEffect
symbolEffect(symbolEffect: SymbolEffect, triggerValue?: number)
设置SymbolGlyph组件动效策略及播放触发器。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
symbolEffect | SymbolEffect|ScaleSymbolEffect|HierarchicalSymbolEffect| AppearSymbolEffect|DisappearSymbolEffect|BounceSymbolEffect| ReplaceSymbolEffect|PulseSymbolEffect | 是 | SymbolGlyph组件动效策略。 默认值:SymbolEffect |
triggerValue | number | 否 | SymbolGlyph组件动效播放触发器,在数值变更时触发动效。 如果首次不希望触发动效,设置-1。 |
SymbolEffect
constructor
constructor()
SymbolEffect的构造函数,无动效。
ScaleSymbolEffect
constructor12+
constructor(scope?: EffectScope, direction?: EffectDirection)
ScaleSymbolEffect的构造函数,缩放动效。
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
scope | EffectScope | 否 | 动效范围。 默认值:EffectScope.LAYER |
direction | EffectDirection | 否 | 动效方向。 默认值:EffectDirection.DOWN |
属性
名称 | 参数类型 | 描述 |
---|---|---|
scope | EffectScope | 动效范围。 默认值:EffectScope.LAYER |
direction | EffectDirection | 动效方向。 默认值:EffectDirection.DOWN |
HierarchicalSymbolEffect12+
constructor12+
constructor(fillStyle?: EffectFillStyle)
HierarchicalSymbolEffect的构造函数,层级动效。
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
fillStyle | EffectFillStyle | 否 | 动效模式。 默认值:EffectFillStyle.CUMULATIVE |
属性
名称 | 类型 | 必填 | 说明 |
---|---|---|---|
fillStyle | EffectFillStyle | 否 | 动效模式。 默认值:EffectFillStyle.CUMULATIVE |
示例代码:
@State eff:boolean=false@Builder symbolGlyphTest(){SymbolGlyph($r('sys.symbol.ohos_trash_circle')).fontSize(30).fontWeight(FontWeight.Bolder).fontColor(['red'])SymbolGlyph($r('sys.symbol.chevron_right_circle')).fontSize(30).renderingStrategy(SymbolRenderingStrategy.MULTIPLE_COLOR).fontColor(['red','blue'])SymbolGlyph($r('sys.symbol.hand_thumbsdown_fill')).fontSize(30).renderingStrategy(SymbolRenderingStrategy.MULTIPLE_OPACITY).fontColor(['red'])SymbolGlyph($r('sys.symbol.wifi')).fontSize(40)// .effectStrategy(SymbolEffectStrategy.HIERARCHICAL)// .symbolEffect(SymbolEffectStrategy.SCALE,4)// .symbolEffect(new ScaleSymbolEffect(EffectScope.LAYER),this.eff).symbolEffect(new HierarchicalSymbolEffect(),this.eff)Button('播放动效').onClick(()=>{this.eff=truesetTimeout(()=>{this.eff=false},500)})}
TextArea
多行文本输入框组件,当输入的文本内容超过组件宽度时会自动换行显示。
高度未设置时,组件无默认高度,自适应内容高度。宽度未设置时,默认撑满最大宽度。
子组件
无
接口
TextArea(value?: TextAreaOptions)
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | TextAreaOptions | 否 | TextArea组件参数。 |
TextAreaOptions对象说明
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
placeholder | ResourceStr | 否 | 设置无输入时的提示文本。输入内容后,提示文本不显示。 仅设置placeholder属性时,手柄依然跟随拖动,手柄松开后光标停留在文字开头位置。 |
text | ResourceStr | 否 | 设置输入框当前的文本内容。 建议通过onChange事件将状态变量与文本实时绑定, 避免组件刷新时TextArea中的文本内容异常。 从API version 10开始,该参数支持$$双向绑定变量。 |
controller8+ | TextAreaController | 否 | 设置TextArea控制器。 |
属性
除支持通用属性和文本通用属性的fontColor、fontSize、fontStyle、fontWeight、fontFamily外,还支持以下属性:
placeholderColor
placeholderColor(value: ResourceColor)
设置placeholder文本颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | placeholder文本颜色。 默认值:跟随主题。 |
placeholderFont
placeholderFont(value: Font)
设置placeholder文本样式,包括字体大小,字体粗细,字体族,字体风格。目前仅支持默认字体族。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | Font | 是 | placeholder文本样式。 |
textAlign
textAlign(value: TextAlign)
设置文本在输入框中的水平对齐方式。
支持TextAlign.Start、TextAlign.Center和TextAlign.End。
可通过align属性控制文本段落在垂直方向上的位置,此组件中不可通过align属性控制文本段落在水平方向上的位置,即align属性中Alignment.TopStart、Alignment.Top、Alignment.TopEnd效果相同,控制内容在顶部,Alignment.Start、Alignment.Center、Alignment.End效果相同,控制内容垂直居中,Alignment.BottomStart、Alignment.Bottom、Alignment.BottomEnd效果相同,控制内容在底部。
当textAlign属性设置为TextAlign.JUSTIFY时,最后一行文本不参与两端对齐,为水平对齐首部效果。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | TextAlign | 是 | 文本在输入框中的水平对齐方式。 默认值:TextAlign.Start |
caretColor
caretColor(value: ResourceColor)
设置输入框光标颜色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | ResourceColor | 是 | 输入框光标颜色。 默认值:'#007DFF' |
copyOption9+
copyOption(value: CopyOptions)
设置输入的文本是否可复制。设置CopyOptions.None时,当前TextArea中的文字无法被复制或剪切,仅支持粘贴。
copyOption对于拖拽,只限制是否选中,不涉及拖拽范围。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | CopyOptions | 是 | 输入的文本是否可复制。 默认值:CopyOptions.LocalDevice,支持设备内复制。 |
maxLength10+
maxLength(value: number)
设置文本的最大输入字符数。默认不设置最大输入字符数限制。到达文本最大字符限制,将无法继续输入字符,同时边框变为红色。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | 是 | 文本的最大输入字符数。 |
showCounter10+
showCounter(value: boolean, options?: InputCounterOptions)
设置当通过InputCounterOptions输入的字符数超过阈值时显示计数器。
参数value为true时,才能设置options,文本框开启计数下标功能,需要配合maxlength(设置最大字符限制)一起使用。字符计数器显示的效果是当前输入字符数/最大可输入字符数。
当输入字符数大于最大字符数乘百分比值时,显示字符计数器。如果用户设置计数器时不设置InputCounterOptions,那么当前输入字符数达到最大字符数时,边框和计数器下标将变为红色。用户同时设置参数value为true和InputCounterOptions,当thresholdPercentage数值在有效区间内,且输入字符数超过最大字符数时,边框和计数器下标将变为红色,框体抖动。highlightBorder设置为false,则不显示红色边框,计数器默认显示红色边框。内联模式下字符计数器不显示。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | boolean | 是 | 是否显示计数器。 |
options11+ | InputCounterOptions | 否 | 计数器的百分比。 |
style10+
style(value: TextContentStyle)
设置文本框多态样式,内联输入风格只支持TextAreaType.Normal类型。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | TextContentStyle | 是 | 文本框多态样式。 默认值:TextContentStyle.DEFAULT |
enableKeyboardOnFocus10+
enableKeyboardOnFocus(value: boolean)
设置TextArea通过点击以外的方式获焦时,是否绑定输入法。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | boolean | 是 | 通过点击以外的方式获焦时,是否绑定输入法。 默认值:true |
selectionMenuHidden10+
selectionMenuHidden(value: boolean)
设置长按、双击输入框或者右键输入框时,是否不弹出文本选择菜单。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | boolean | 是 | 长按、双击输入框或者右键输入框时,是否不弹出文本选择菜单。 默认值:false |
barState10+
barState(value: BarState)
设置输入框编辑态时滚动条的显示模式。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | BarState | 是 | 输入框编辑态时滚动条的显示模式。 默认值:BarState.Auto |
maxLines10+
maxLines(value: number)
配置textOverflow一起使用时,maxlines为可显示行数,超出截断;未配置textOverflow时,内联模式获焦状态下内容超出maxlines时,文本可滚动显示,内联模式非获焦状态下不生效maxlines,非内联模式按行截断。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | number | 是 | 内联输入风格编辑态时文本可显示的最大行数。 默认值:3,非内联模式下,默认值为+∞,不限制最大行数。 取值范围:(0, +∞) |
type11+
type(value: TextAreaType)
设置输入框类型。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | TextAreaType | 是 | 输入框类型。 默认值:TextAreaType.Normal |
enableAutoFill12+
enableAutoFill(value: boolean)
设置是否启用自动填充。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | boolean | 是 | 是否启用自动填充。 true表示启用,false表示不启用。 默认值:true |
contentType12+
contentType(contentType: ContentType)
设置自动填充类型。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
contentType | ContentType | 是 | 自动填充类型。 |
wordBreak12+
wordBreak(value: WordBreak)
设置文本断行规则。该属性对placeholder文本无效。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | WordBreak | 是 | 文本断行规则。 默认值:WordBreak.BRE |
textOverflow12+
textOverflow(value: TextOverflow)
设置文本超长时的显示方式。
内联模式,主动配置textoverflow才会生效按maxline截断效果,不配置时,默认不截断。
文本截断是按字截断。例如,英文以单词为最小单位进行截断,若需要以字母为单位进行截断,wordBreak属性可设置为WordBreak.BREAK_ALL。
当overflow设置为TextOverflow.None、TextOverflow.Clip、TextOverflow.Ellipsis时,需配合maxLines使用,单独设置不生效。设置TextOverflow.None与TextOverflow。Clip效果一样。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | TextOverflow | 是 | 文本超长时的显示方式。 默认值:TextOverflow.Clip |
lineBreakStrategy12+
lineBreakStrategy(strategy: LineBreakStrategy)
设置折行规则。该属性在wordBreak不等于breakAll的时候生效,不支持连词符。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
strategy | LineBreakStrategy | 是 | 文本的折行规则。 默认值:LineBreakStrategy.GREEDY |
事件
除支持通用事件外,还支持以下事件:
onChange
onChange(callback: (value: string) => void)
输入内容发生变化时,触发该回调。
TextClock
TextClock组件通过文本将当前系统时间显示在设备上。支持不同时区的时间显示,最高精度到秒级。
子组件
无
接口
TextClock(options?: { timeZoneOffset?: number, controller?: TextClockController })
参数:
参数名 | 参数类型 | 必填 | 参数描述 |
---|---|---|---|
timeZoneOffset | number | 否 | 设置时区偏移量。 取值范围为[-14, 12],表示东十二区到西十二区,其中负值表示东时区,正值表示西时区,比如东八区为-8。设置值为该取值范围内的浮点数时会进行取整,舍弃小数部分。 对横跨国际日界线的国家或地区,用-13(UTC+13)和-14(UTC+14)来保证整个国家或者区域处在相同的时间,当设置的值不在取值范围内时,将使用当前系统的时区偏移量。 默认值:当前系统的时区偏移量 从API version 11开始,设置值为{ 9.5, 3.5, -3.5, -4.5, -5.5, -5.75, -6.5, -9.5, -10.5, -12.75 }集合中的浮点数时不再进行取整。 |
controller | TextClockController | 否 | 绑定一个控制器,用来控制文本时钟的状态。 |
属性
除支持通用属性和文本通用属性的fontColor、fontSize、fontStyle、fontWeight、fontFamily外,还支持以下属性:
format
format(value: string)
设置显示时间格式,如“yyyy/mm/dd”、“yyyy-mm-dd”。
y:年(yyyy表示完整年份,yy表示年份后两位)
M:月(若想使用01月则使用MM)
d:日(若想使用01日则使用dd)
E:星期(若想使用星期六则使用EEEE,若想使用周六则使用E、EE、EEE)H:小时(24小时制) h:小时(12小时制)
m:分钟
s:秒
SS:厘秒(format中S个数<3,全部按厘秒处理)
SSS:毫秒(format中S个数>=3,全部按毫秒处理)
a:上午/下午(当设置小时制式为H时,该参数不生效)
日期间隔符:"年月日"、“/”、"-"、"."(可以自定义间隔符样式,间隔符不可以为字母,汉字则作为间隔符处理)
允许自行拼接组合显示格式,即:年、月、日、星期、时、分、秒、毫秒可拆分为子元素,可自行排布组合。时间更新频率最高为一秒一次,不建议单独设置厘秒和毫秒格式。
当设置无效字母时(非上述字母被认为是无效字母),该字母会被忽略。如果format全是无效字母时,显示格式跟随系统语言和系统小时制。例如系统语言为中文时,12小时制显示格式为yyyy/MM/dd aa hh:mm:ss.SSS,24小时制显示格式为yyyy/MM/dd HH:mm:ss.SSS。
若format为空或者undefined,则使用默认值。
参数:
参数名 | 类型 | 必填 | 说明 |
---|---|---|---|
value | string | 是 | 显示时间格式。 |
以下是format输入的格式样式及对应的显示效果:
输入格式 | 显示效果 |
---|---|
yyyy年M月d日 EEEE | 2023年2月4日 星期六 |
yyyy年M月d日 | 2023年2月4日 |
M月d日 EEEE | 2月4日 星期六 |
M月d日 | 2月4日 |
MM/dd/yyyy | 02/04/2023 |
EEEE MM月dd日 | 星期六 02月04日 |
yyyy(完整年份) | 2023年 |
yy(年份后两位) | 23年 |
MM(完整月份) | 02月 |
M(月份) | 2月 |
dd(完整日期) | 04日 |
d(日期) | 4日 |
EEEE(完整星期) | 星期六 |
E、EE、EEE(简写星期) | 周六 |
yyyy年M月d日 | 2023年2月4日 |
yyyy/M/d | 2023/2/4 |
yyyy-M-d | 2023-2-4 |
yyyy.M.d | 2023.2.4 |
HH:mm:ss(时:分:秒) | 17:00:04 |
aa hh:mm:ss(时:分:秒) | 上午 5:00:04 |
hh:mm:ss(时:分:秒) | 5:00:04 |
HH:mm(时:分) | 17:00 |
aa hh:mm(时:分) | 上午 5:00 |
hh:mm(时:分) | 5:00 |
mm:ss(分:秒) | 00:04 |
mm:ss.SS(分:秒.厘秒) | 00:04.91 |
mm:ss.SSS(分:秒.毫秒) | 00:04.536 |
hh:mm:ss aa | 5:00:04 上午 |
HH | 17 |
示例代码:
tc:TextAreaController=new TextAreaController()clock:TextClockController=new TextClockController()@Builder textAreaTest(){TextArea({placeholder:'请输入个人简介',text:'我叫张三...',controller:this.tc}).height(300).width('90%').placeholderColor('#E7DDD9').placeholderFont({size:18,weight:FontWeight.Bolder,style:FontStyle.Italic}).textAlign(TextAlign.Center).caretColor(Color.Pink).caretStyle({color:'#E5FFFB',width:3}).copyOption(CopyOptions.LocalDevice).maxLength(150).border({style:BorderStyle.Solid,width:1,color:Color.Gray}).showCounter(true,{thresholdPercentage:40,highlightBorder:true})// .style(TextContentStyle.INLINE).enableKeyboardOnFocus(true).selectionMenuHidden(false).barState(BarState.Auto)// .maxLength(4)// .textOverflow(TextOverflow.Ellipsis).type(TextAreaType.NORMAL).enableAutoFill(true)//启用填充.contentType(ContentType.USER_NAME).wordBreak(WordBreak.BREAK_ALL).lineBreakStrategy(LineBreakStrategy.GREEDY)TextClock({timeZoneOffset:-8,controller:this.clock}).format('yyyy年M月d日 EEEE aa hh:mm:ss').onClick(()=>{this.clock.stop()}).contentModifier(new MyTextClock())}
相关文章:
基础组件:
基础组件: RichText 富文本组件,解析并显示HTML格式文本。 适用场景: RichText组件适用于加载与显示一段HTML字符串,且不需要对显示效果进行较多自定义的应用场景。RichText组件仅支持有限的通用属性和事件。具体见属性与事件…...
【LeetCode 面试经典150题】详细题解之滑动窗口篇
【LeetCode 面试经典150题】详细题解之滑动窗口篇 1 滑动窗口理论基础1.1 算法思想1.2 使用场景1.3 使用思路 2 209.长度最小的子数组2.1 题目分析2.2 算法步骤2.3 代码实现2.4 时间复杂度 3 3.无重复字符的最长字串3.1 题目分析3.2 算法步骤3.3 代码实现3.4 复杂度分析 4 30.串…...
【 CSS 】sass 扩展语言的安装
一、全局安装node-sass Sass世界上最成熟、稳定和强大的CSS扩展语言 | Sass中文网 https://www.npmjs.com/package/node-sass NPM镜像_NPM下载地址_NPM安装教程-阿里巴巴开源镜像站 注意:nodejs版本14以上,否则node-sass安装不成功 npm install -g mi…...
【Linux】Linux中用户信息相关的配置文件:/etc/passwd、/etc/group、/etc/shadow、/etc/sudoers
1 用户信息 1.1 /etc/passwd linux上用户的信息保存在/etc/passwd中,看文件名会以为这里保存的是用户密码,但实际上用户密码保存在另一个文件中。 /etc/passwd文件中每行保存一个用户的信息,例如: root:x:0:0:root:/root:/bin…...
electron-vite_18 设置系统音量loudness报错
loudness是一款控制系统音量输出的一款 Node.js 库;但是在electron-vite中直接使用编译的时候会报错;这个时候需要单独处理; 错误分析 error Error: spawn E:\xxx\out\main\adjust_get_current_system_volume_vista_plus.exe 查看编译后项目…...
springboot测试类里注入不成功且运行报错
目录 出错信息 原因 出错信息 写测试类的时候,一直说我注入不成功 而且我运行的时候报错了 java.lang.IllegalStateException: Unable to find a SpringBootConfiguration, you need to use ContextConfiguration or SpringBootTest(classes...) with your te…...
Harmony 网络请求
Http数据请求 axios第三方网络请求工具 1.下载ohpm 2.安装axios 3.使用axios...
Webpack在Vue CLI中的应用
webpack 作为目前最流行的项目打包工具,被广泛使用于项目的构建和开发过程中,其实说它是打包工具有点大材小用了,我个人认为它是一个集前端自动化、模块化、组件化于一体的可拓展系统,你可以根据自己的需要来进行一系列的配置和安…...
docker-componse集群部署Tdengine3.3.2.0
一、centos7.5集群部署三台机器使用docker-componse进行部署 1、三台服务器分别配置host vim /etc/hosts 192.168.13.244 td.master 192.168.13.245 td.slave1 192.168.12.70 td.slave2 2、...
4.3 数据库HAVING语句
having子句要和group by子句联合起来才能使用,不能单独去使用,接下来咱们看一下为什么要引入having子句语法呢?引入having子句也是出于无奈,因为有些条件查询,用group by子句并不能满足要求,比如说查询部门…...
如何使用React,透传各类组件能力/属性?
在23年的时候,我主要使用的框架还是Vue,当时写了一篇“如何二次封装一个Vue3组件库?”的文章,里面涉及了一些如何使用Vue透传组件能力的方法。在我24年接触React之后,我发现这种扩展组件能力的方式有一个专门的术语&am…...
C# 6.0版本的WebAPI接口部署到Linux服务器
将 C# 6.0 的 Web API 部署到 Linux 服务器涉及多个步骤,包括准备环境、构建和发布应用程序、配置 Web 服务器以及确保应用程序正常运行。以下是详细的部署指南: 1. 准备开发环境 安装 .NET SDK 确保你已经在本地开发环境中安装了 .NET SDK(…...
ArkTs组件(2)
一.下拉列表组件:Select 1.接口 Select(options: Array<SelectOption>) 参数名类型必填说明optionsArray<SelectOption>是设置下拉选项。 SelectOption对象说明 名称类型必填说明valueResourceStr是 下拉选项内容。 iconResourceStr否 下拉选项图片…...
Bash 脚本教程
注:本文为 “Bash 脚本编写” 相关文章合辑。 BASH 脚本编写教程 as good as well于 2017-08-04 22:04:28 发布 这里有个老 American 写的 BASH 脚本编写教程,非常不错,至少没接触过 BASH 的也能看懂! 建立一个脚本 Linux 中有…...
SQL创建和操纵表
本文介绍创建、更改和删除表的基本知识。 1. 创建表 SQL 不仅用于表数据操纵,而且还用来执行数据库和表的所有操作,包括表本身的创建和处理。一般有两种创建表的方法: 多数DBMS 都具有交互式创建和管理数据库表的工具;表也可以…...
1.微服务灰度发布(方案设计)
前言 微服务架构中的灰度发布(也称为金丝雀发布或渐进式发布)是一种在不影响现有用户的情况下,逐步将新版本的服务部署到生产环境的策略。通过灰度发布,你可以先将新版本的服务暴露给一小部分用户或特定的流量,观察其…...
QT笔记- QTreeView + QFileSystemModel 当前位置的保存与恢复 #选中 #保存当前索引
保存当前位置 QString currentPath model->filePath(view->currentIndex()); // 获得当前位置路径 恢复位置 view->setCurrentIndex(model->index(currentPath)); // 设置此路径所在位置为当前位置...
LeetCode - Google 校招100题 第6天 回溯法(Backtracking) (8题)
欢迎关注我的CSDN:https://spike.blog.csdn.net/ 本文地址:https://spike.blog.csdn.net/article/details/144743505 LeetCode 合计最常见的 112 题: 校招100题 第1天 链表(List) (19题)校招100题 第2天 树(Tree) (21题)校招100题 第3天 动态规划(DP) (20题)...
k8s,service如何找到容器
Kubernetes之所以需要Service,一方面是因为Pod的IP不是固定的,另一方面则是因为一组Pod实例之间总会有负载均衡的需求 被selector选中的Pod,就称为Service的Endpoints,查看方式: kubectl get endpoints hostnames需要…...
计算机的错误计算(一百九十二)
摘要 用两个大模型计算 csc(0.999), 其中,0.999是以弧度为单位的角度,结果保留5位有效数字。两个大模型均给出了 Python代码与答案。但是,答案是错误的。 例1. 计算 csc(0.999), 其中,0.999是以弧度为单位的角度,结…...
金仓数据库安装-Kingbase v9-centos
在很多年前有个项目用的金仓数据库,上线稳定后就没在这个项目了,只有公司的开发环境还在维护,已经好多年没有安装过了,重温一下金仓数据库安装,体验一下最新版本,也做一个新版本的试验环境; 一、…...
深入解析 Java 中的 getDeclaredMethods() 方法:使用与原理全攻略
在 Java 的反射机制中,getDeclaredMethods() 是一个非常重要的方法,它允许我们获取类中声明的所有方法(包括公共、私有、保护以及默认访问权限的方法)。通过这个方法,我们可以动态地分析和操作类的行为,这在…...
Dockerfile的用法
Dockerfile的用法 示例 `Dockerfile`使用 `Dockerfile` 创建 Docker 镜像`Dockerfile` 指令详解其他常用指令总结Dockerfile 是一个文本文件,包含了用于创建 Docker 镜像的一系列指令。这些指令描述了镜像的基础、所安装的软件、文件的复制、环境变量的设置以及其他配置。下面…...
Gmsh有限元网格剖分(Python)---点、直线、平面的移动
Gmsh有限元网格剖分(Python)—点、直线、平面的移动和旋转 最近在学习有限元的网格剖分算法,主要还是要参考老外的开源Gmsh库进行,写一些博客记录下学习过程,方便以后回忆嘞。 Gmsh的官方英文文档可以参考:gmsh.pdf 但咋就说&a…...
AI的进阶之路:从机器学习到深度学习的演变(三)
(承接上集:AI的进阶之路:从机器学习到深度学习的演变(二)) 四、深度学习(DL):机器学习的革命性突破 深度学习(DL)作为机器学习的一个重要分支&am…...
如何通过 360 驱动大师检查自己电脑上的显卡信息
在深入探讨如何查看显卡信息之前,首先需要了解显卡的基本概念。显卡(Graphics Processing Unit, GPU),是计算机中负责处理图形输出到显示器的重要硬件。根据其集成度和性能,显卡通常被分为两类: 集成显卡&…...
数据仓库工具箱—读书笔记02(Kimball维度建模技术概述04、使用一致性维度集成)
Kimball维度建模技术概述 记录一下读《数据仓库工具箱》时的思考,摘录一些书中关于维度建模比较重要的思想与大家分享🤣🤣🤣 第二章前言部分作者提到:技术的介绍应该通过涵盖各种行业的熟悉的用例展开(赞同…...
.net framework wpf 打包免安装exe文件
1、打开所在项目csproj文件添加以下内容: <Target Name"AfterResolveReferences"><ItemGroup><EmbeddedResource Include"(ReferenceCopyLocalPaths)" Condition"%(ReferenceCopyLocalPaths.Extension) .dll"><…...
瑞吉外卖项目学习笔记(八)修改菜品信息、批量启售/停售菜品
瑞吉外卖项目学习笔记(一)准备工作、员工登录功能实现 瑞吉外卖项目学习笔记(二)Swagger、logback、表单校验和参数打印功能的实现 瑞吉外卖项目学习笔记(三)过滤器实现登录校验、添加员工、分页查询员工信息 瑞吉外卖项目学习笔记(四)TableField(fill FieldFill.INSERT)公共字…...
Oracle 日常巡检
1. 检查服务器状态 1.1. CPU使用情况 1.1.1. top top 命令是 Linux 和 Unix 系统中用于显示实时系统状态的工具,特别是对于监控 CPU 和内存的使用非常有用。 在命令行中输入 top,top 会显示一个实时更新的界面,其中包含系统的关键指标&am…...
CS 144 check7: putting it all together
Exercises 经验:两边的TCP连接建立得尽快,如果服务器端启动了,客户端没有启动就连不上。。 服务器端: 客户端: 文件收发测试: 参考: CS 144CS144 | Winter 2024, Lab 0~7 记录࿰…...
springboot数据校验报错
目录 报错信息 原因 解决 报错信息 springboot在进行数据校验的时候ConfigurationProperties注解形式下Email报错 Caused by: javax.validation.UnexpectedTypeException: HV000030: No validator could be found for constraint javax.validation.constraints.Email valid…...
mapbox基础,加载天地图矢量底图
👨⚕️ 主页: gis分享者 👨⚕️ 感谢各位大佬 点赞👍 收藏⭐ 留言📝 加关注✅! 👨⚕️ 收录于专栏:mapbox 从入门到精通 文章目录 一、🍀前言1.1 ☘️mapboxgl.Map 地图对象…...
SLAM/数字图象处理基础
概念 视差:相同特征的不同深度估计的偏差 BoW,DBoW,DBoW2的区别是什么 Bag of Words (BoW)、DBoW(Dynamic Bag of Words)和DBoW2是用于图像处理和计算机视觉中的不同特征表示和匹配方法。它们之间的主要区别如下&am…...
修改vue-element-admin,如何连接我们的后端
改哪几个文件就可以连接我们后端 主要就这四个 main.js,屏蔽这个或者删除 vue-config 最后两个文件改下端口即可 这样基本就能发了,但是还要改下 改成api 然后还要修改request.js 这里改成我们返回的状态码 我讲一个东西很容易就懂了&…...
基于PLC的采摘机械手系统(论文+源码)
1系统方案设计 本次设计围绕基于PLC的采摘机械手系统进行设计, PLC即可编程控制器其是一种常见的微处理器,本次拟采用西门子是S7-200 PLC,一方面对整个设计从器件选型到I/O分配,图纸绘制等进行设计,另一方面还通过组态…...
使用ArcGIS/ArcGIS pro绘制六边形/三角形/菱形渔网图
在做一些尺度分析时,经常会涉及到对研究区构建不同尺度的渔网进行分析,渔网的形状通常为规则四边形。构建渔网的方法也很简单,使用ArcGIS/ArcGIS Pro工具箱中的【创建渔网/CreateFishnet】工具来构建。但如果想构建其他形状渔网进行相关分析&…...
【5/6 面向应用相关的优化 网卡实现及评估 】
5 面向应用相关的优化 面对数据中心多样化的部署需求和应用场景,如分布式存储、多租户性能隔离等,构建高性能的RDMA系统需要仔细选择传输模式和通信原语以充分发挥其性能优势,并调整软硬件结构进行适配.整体手段:在软件层面结合R…...
如何识别钓鱼邮件和诈骗网站?(附网络安全意识培训PPT资料)
识别钓鱼邮件和诈骗网站是网络安全中的一个重要环节。以下是一些识别钓鱼邮件和诈骗网站的方法: 识别钓鱼邮件: 检查发件人地址: 仔细查看发件人的电子邮件地址,看是否与官方域名一致。 检查邮件内容: 留意邮件中是否…...
TOGAF之架构标准规范-业务架构
TOGAF标准规范中,业务架构阶段的主要工作是开发支持架构愿景的业务架构。 如上所示,业务架构(Business Architecture)在TOGAF标准规范中处于B阶段,该阶段的主要内容包括阶段目标、阶段输入、流程步骤、架构方法。 阶段…...
嵌入式轻量级开源操作系统:HeliOS的使用
嵌入式轻量级开源操作系统:HeliOS的使用 📍项目地址:https://github.com/heliosproj/HeliOS HeliOS项目是一个社区交付的开源项目,用于构建和维护HeliOS嵌入式操作系统(OS)。HeliOS是一个功能齐全的操作系统࿰…...
mysql 数据库迁移到达梦数据库
1.windows安装达梦数据库,去官网下载 dm8 进行安装,安装后,可以使用管理工具管理数据 使用迁移工具对数据进行迁移; 2.使用php 或者 thinkphp连接达梦数据库 2.1、先PHP开启DM扩展 从达梦数据库安装目录下drivers/php_pdo 复制对…...
Java中的异常处理机制
今天想和大家探讨Java中的异常处理机制。异常处理是任何编程语言中不可或缺的一部分,它帮助我们处理程序运行时可能出现的错误,确保程序的健壮性和稳定性。Java作为一种强类型、面向对象的编程语言,提供了一套完整的异常处理框架。 1. 异常的…...
iOS 苹果开发者账号: 查看和添加设备UUID 及设备数量
参考链接:苹果开发者账号下添加新设备UUID - 简书 如果要添加新设备到 Profiles 证书里: 1.登录开发者中心 Sign In - Apple 2.找到证书设置: Certificate,Identifiers&Profiles > Profiles > 选择对应证书 edit &g…...
数据仓库工具箱—读书笔记02(Kimball维度建模技术概述03、维度表技术基础)
Kimball维度建模技术概述 记录一下读《数据仓库工具箱》时的思考,摘录一些书中关于维度建模比较重要的思想与大家分享🤣🤣🤣 第二章前言部分作者提到:技术的介绍应该通过涵盖各种行业的熟悉的用例展开(赞同…...
Linux中常用的Shell脚本(运维+常用)汇总
废话不多说,直接上干货! 一、运维脚本 (1)监控CPU和内存的使用情况 #!/bin/bashcpu_threshold80 mem_threshold80# 获取CPU和内存使用率 cpu_usage$(top -bn1 | grep "Cpu(s)" | sed "s/.*, *\([0-9.]*\)%* id.…...
Java 方法注释:规范、实用和高质量的写法
目录 为什么要注释方法? 方法注释的基本要求 Javadoc 注释格式 示例:一个计算圆面积的方法 代码示例 注释分析 如何写出高质量的 Java 方法注释? 1. 关注可读性 2. 使用 Javadoc 格式 3. 描述异常 4. 适当的解释复杂的算法 5. 避…...
解决JIRA、Confluence用户自动注销、反复登录的问题
一、问题描述:当工作从从confluence里面打开jira的时候,在回到confluence时候,就自动退出了,需要账号密码登录重复登录,使人十分厌恶。 二、原因分析: 访问 JIRA、Confluence 或任何其他具有相同域或 IP 上…...
Python9-作业2
记录python学习,直到学会基本的爬虫,使用python搭建接口自动化测试就算学会了,在进阶webui自动化,app自动化 python基础8-灵活运用顺序、选择、循环结构 作业2九九乘法表三种方式打印九九乘法表使用两个嵌套循环使用列表推导式和…...
基于c语言的union、字符串、格式化输入输出
结构体之共用体union 共用体也叫联合体,其关键词为union 与结构体不同的是,共用体所开辟的存储空间仅仅为其中最长类型变量的存储空间而不是全部变量的存储空间,由于同一内存单元在同一时间内只能存放其中一种的数据类型,因此在每…...