当我们在 recyclerview 中使用 searchview 时,我们如何将搜索到的字符着色?
Posted
技术标签:
【中文标题】当我们在 recyclerview 中使用 searchview 时,我们如何将搜索到的字符着色?【英文标题】:How can we have searched characters colored when we use searchview in recyclerview? 【发布时间】:2020-04-24 22:39:28 【问题描述】:我有一个 recyclerview,我想在 searchview 的帮助下进行搜索。我希望我搜索的字符是彩色的并且是特定的。
我正在使用 Kotlin 编程。
【问题讨论】:
添加更多解释,例如,如果您有想要的设计,请添加图片 另外,添加您目前尝试过的代码 【参考方案1】:经过一番努力,我自己找到了答案。我使用这样的函数:
fun colorsearch(a:String,charText: String):SpannableStringBuilder
var l = 0
var b:ArrayList<Int>
b = ArrayList()
var w = 0
var i = 0
if (charText!="")
label@ while (i < a.length)
var j=0
while (j<charText.length)
Log.v("abc", j.toString())
if (i == a.length)
break@label
while ((a[i] != charText[j]))
if (j != 0)
continue@label
i++
if (i == a.length)
break@label
i++
j++
b.add(i)
w++
if (i == a.length)
break@label
val searchtitle = SpannableStringBuilder(a)
while (l < w)
searchtitle.setSpan(
ForegroundColorSpan(Color.RED),
b[l] - charText.length, b[l],
Spanned.SPAN_EXCLUSIVE_INCLUSIVE
)
l++
return searchtitle
“a”中的“charText”将为红色。
【讨论】:
如何将 Kotlin 转换为 Java? 我认为它们很相似。也许这里可以帮助你:***.com/questions/34957430/…@Sanidhya Setu以上是关于当我们在 recyclerview 中使用 searchview 时,我们如何将搜索到的字符着色?的主要内容,如果未能解决你的问题,请参考以下文章
聊聊RecyclerView新出的ConcatAdapter如何使用
聊聊RecyclerView新出的ConcatAdapter如何使用
recyclerview 在滚动时坚持使用图像放大/缩小动画的位置