突出显示recycleView列表中的查询文本,忽略空格

问题描述 投票:0回答:1

我正在尝试在recycleView列表中突出显示查询的文本。我的要求是忽略空格并突出显示文本。

我的列表:[“罗伯特·德尼罗”,“杰克·尼科尔森”,“马龙·白兰度”]

搜索查询:DeNiro

期望:罗伯特De N iro

下面是我的代码

  private Spannable getHighlightedText(String wholeText, String searchText) {

    if (searchText != null && wholeText.toLowerCase().contains(searchText.toLowerCase())) {
        int startPos = wholeText.toLowerCase().indexOf(searchText.toLowerCase());
        int endPos = startPos + searchText.length();

        Spannable spanString = Spannable.Factory.getInstance().newSpannable(wholeText);
        spanString.setSpan(new ForegroundColorSpan(getContext().getResources().getColor(R.color.primary)), startPos, endPos, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
        return spanString;
    }

    return new SpannableString(wholeText);
}
android searchview spannablestring
1个回答
0
投票

只需在检查之前从搜索字符串中删除空格

searchText= searchText.trim().replace(" ", "");
© www.soinside.com 2019 - 2024. All rights reserved.