type
status
date
slug
summary
tags
category
icon
password
在做app的搜索的功能时,需要对搜索结果匹配的字符进行高亮处理,这个高亮是后端实现的,后端会给我们传一个html格式的字符串,我们通过Html.fromHtml() 将字符串转换为一个Spanned对象。最后,我们将这个Spanned对象设置为TextView的文本。下面是简单用法:
开发中遇到了高亮标签挨着空格的情况,这个空格有全角有半角的,Html.fromHtml() 会将这些空格合并,这样段落显示就有问题,最简单的想法是将字符串中的空格替换成 但这样并不生效,显示还是有问题。最终实现的代码如下
函数的主要步骤如下:
  1. 使用 replace 方法将全角空格(" ")替换为无意义的临时字符串("\u2007")。
  1. 使用 Html.fromHtml 方法将替换后的字符串解析为带有HTML样式的文本。
  1. 创建一个 SpannableStringBuilder 对象,并将解析后的文本作为初始文本。
  1. 使用 while 循环和 indexOf 方法找到临时字符串在 SpannableStringBuilder 对象中的位置。
  1. 使用 replace 方法将找到的临时字符串替换为全角空格。
  1. indexOf 方法返回 -1 时,表示没有找到更多的临时字符串,此时结束循环。
 
生产者消费者模式Android动态高斯模糊蒙层
LuluNotion
LuluNotion
一个普通的干饭人🍚
公告
type
status
date
slug
summary
tags
category
icon
password
🎉NotionNext 4.0即将到来🎉
-- 感谢您的支持 ---
👏欢迎更新体验👏