1

场景一:自定义搜索图标

效果图

方案

  1. 基于Search组件的searchIcon属性设置搜索图标,searchIcon可以设置size、color。注意:当前搜索图标不支持隐藏且不支持位置调整。
  2. 基于searchButton属性设置搜索框末尾搜索按钮。基于该属性可更改文本内容及文本样式。

核心代码

Search({ value: this.changeValue, placeholder: '请输入搜索内容', controller: this.controller })
  //设置搜索框末尾搜索按钮,可修改文本内容及文本样式
  .searchButton('搜索',{fontSize: '16fp',fontColor: '#3789CC'})
    //更改图标样式
  .searchIcon({
    src: $r('app.media.Heart')
  })

场景二:自定义删除图标

效果图

方案

基于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')
    }
  })

场景三:Search组件背景背景填充

方案

  1. 基于backgroundImage属性给Search组件添加背景填充。
  2. 基于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})

场景四:更改光标样式

方案

基于caretStyle更改光标样式,可更改光标width(默认值:1.5vp)、color(默认值:‘\#007DFF’)。

核心代码

Search({ value: this.changeValue, placeholder: '请输入搜索内容', controller: this.controller })
  //更改光标样式
  .caretStyle({
    width: '3vp',
    color: '#9E2927'
  })

场景五:更改Search组件圆角

方案

基于borderRadius属性设置Search组件圆角。

核心代码

Search({ value: this.changeValue, placeholder: '请输入搜索内容', controller: this.controller })
  //设置Search组件圆角
  .borderRadius(5)

HarmonyOS码上奇行
5k 声望2.5k 粉丝