HarmonyOS 鸿蒙Next基于Search组件实现搜索栏
HarmonyOS 鸿蒙Next基于Search组件实现搜索栏
HarmonyOS的分布式文件系统让我在多设备间传输文件变得轻松无比。
关于HarmonyOS 鸿蒙Next基于Search组件实现搜索栏的问题,您也可以访问:https://www.itying.com/category-93-b0.html 联系官网客服。
场景一:自定义搜索图标
方案
-
基于Search组件的searchIcon属性设置搜索图标,searchIcon可以设置size、color。注意:当前搜索图标不支持隐藏且不支持位置调整。
-
基于searchButton属性设置搜索框末尾搜索按钮。基于该属性可更改文本内容及文本样式。
核心代码
Search({ value: this.changeValue, placeholder: '请输入搜索内容', controller: this.controller })
//设置搜索框末尾搜索按钮,可修改文本内容及文本样式
.searchButton(‘搜索’,{fontSize: ‘16fp’,fontColor: ‘#3789CC’})
//更改图标样式
.searchIcon({
src: $r(‘app.media.Heart’)
})
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>
场景二:自定义删除图标
方案
基于Search组件的cancelButton属性设置删除图标,cancelButton可以设置图标显示状态style以及图标size、color。注意:清除图标及搜索按钮之间的分割线目前无法隐藏。
核心代码
Search({ value: this.changeValue, placeholder: ‘请输入搜索内容’, controller: this.controller })
//设置清除图标样式
.cancelButton({
//style设置清除图标显示与隐藏
style: CancelButtonStyle.CONSTANT,
icon: {
color: Color.Red,
src: $r(‘app.media.delete’)
}
})
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>
场景三:Search组件背景背景填充
方案
-
基于backgroundImage属性给Search组件添加背景填充。
-
基于backgroundImageSize属性设置背景图片大小,使得背景填充整个Search组件。
核心代码
Search({ value: this.changeValue, placeholder: ‘手机话费充值’, controller: this.controller })
// Search组件背景填充
.backgroundImage(this.isShowColor?$r(‘app.media.Beach’):undefined)
// Search组件尺寸设置
.backgroundImageSize({width:‘100%’,height: 50})
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>
场景四:更改光标样式
方案
基于caretStyle更改光标样式,可更改光标width(默认值:1.5vp)、color(默认值:‘#007DFF’)。
核心代码
Search({ value: this.changeValue, placeholder: ‘请输入搜索内容’, controller: this.controller })
//更改光标样式
.caretStyle({
width: ‘3vp’,
color: ‘#9E2927’
})
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>
场景五:更改Search组件圆角
方案
基于borderRadius属性设置Search组件圆角。
核心代码
Search({ value: this.changeValue, placeholder: ‘请输入搜索内容’, controller: this.controller })
//设置Search组件圆角
.borderRadius(5)
<button style="position: absolute; padding: 4px 8px 0px; cursor: pointer; top: 8px; right: 8px; font-size: 14px;">复制</button>