Text匹配文字高亮显示

在搜索框中搜索想要的文字,Text就回进行匹配,并且高亮显示。

HarmonyOS
2024-05-26 15:18:50
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
cbaby

使用的核心API

Text

核心代码解释

@Entry 
@Component 
struct Page240108114409062 { 
  @State searchValue: string = ''; 
  @State dataArr: string[] = [ 
    "第一段数据", 
    "第二段数据", 
    "第三段数据", 
    "第四段数据", 
    "第五段数据", 
    "第六段数据", 
    "第七段数据", 
    "第八段数据", 
    "第九段数据", 
    "第十段数据", 
  ] 
  @State showArr: string[] = [] 
 
  build() { 
    Row() { 
      Column() { 
        Search({ value: $$this.searchValue, placeholder: 'Type to search...' }) 
          .searchButton('SEARCH') 
          .width('90%') 
          .height(40) 
          .backgroundColor('#F5F5F5') 
          .placeholderColor(Color.Grey) 
          .placeholderFont({ size: 14, weight: 400 }) 
          .textFont({ size: 14, weight: 400 }) 
          .margin(20) 
          .onChange(() => { 
            this.showArr = this.dataArr.filter((item: string) => { 
              return this.searchValue && item.indexOf(this.searchValue) != -1 
            }) 
            console.log(JSON.stringify(this.showArr)) 
          }) 
        List() { 
          ForEach(this.showArr, (item: string) => { 
            ListItem() { 
              Row() { 
                // RichText(item) 
                Text() { 
                  Span(this.searchValue).fontColor(Color.Red) 
                  Span(item.replace(this.searchValue, "")) 
                } 
              }.width("100%").height(40).justifyContent(FlexAlign.Center) 
            } 
          }) 
        } 
      } 
      .width('100%') 
    } 
    .height('100%') 
  } 
}

注明适配的版本信息

  • IDE版本:4.1.3.500
  • SDK版本:4.1.5.6

实现效果

分享
微博
QQ
微信
回复
2024-05-27 20:22:35
相关问题
HarmonyOS Text搜索关键字高亮功能
563浏览 • 1回复 待解决
HarmonyOS 如何在Text中做搜索词高亮?
290浏览 • 1回复 待解决
HarmonyOS 文字显示问题
431浏览 • 1回复 待解决
text怎么更改部分文字颜色
7173浏览 • 1回复 待解决
如何识别文本中的邮箱并高亮显示
389浏览 • 1回复 待解决
文字背景颜色渐变显示
2171浏览 • 1回复 待解决
鸿蒙 | Text 内容显示问题
10271浏览 • 5回复 待解决
如何获取Text组件中文字的宽度
2143浏览 • 1回复 待解决
过长文字如何滚动显示
1909浏览 • 1回复 待解决
Text组件是否支持多行显示
2007浏览 • 1回复 待解决
HarmonyOS Tabs怎么与text同行显示
300浏览 • 1回复 待解决
HarmonyOS Text中如何显示 emjo 表情?
250浏览 • 1回复 待解决
HarmonyOS Text超出显示省略号
610浏览 • 1回复 待解决
HarmonyOS Text中的Span显示问题
516浏览 • 1回复 待解决