中突出顯示textView的特定單詞我正在構建一個應用程序,其中用戶使用搜索功能來檢查特定單詞是否存在於數據庫中。在後端進程中,我使用類似查詢來篩選出正確的結果並將其顯示在列表視圖中。如何在android
在列表視圖中,有一個文本視圖,其中顯示信息並且該特定單詞在該文本視圖中使用setSpan我用下面指定的顏色突出顯示該特定單詞。
highlightedWord.setSpan(new BackgroundColorSpan(0xFFFFFF00) , 0, highlightedWord.length(),
SpannableString.SPAN_EXCLUSIVE_EXCLUSIVE);
holder.messageTxt.setMovementMethod(LinkMovementMethod.getInstance());
holder.messageTxt.setHighlightColor(Color.YELLOW);
holder.messageTxt.setText(firstString);
holder.messageTxt.append(highlightedWord);
holder.messageTxt.append(secondString);
它運行良好,直到這裏。
第一個問題: 現在的問題是如果有10行或更多的信息,並且我的文本視圖設置爲max-Line one。因此,唯一的第一行顯示在我的文本視圖中。如果該特定單詞位於第一行下方,它不會突出顯示。我需要在我的文本視圖中顯示該特定行。例如,如果您在任何消息應用程序中進行搜索,它會按照它排列單詞。
第二個問題: 如果我使用setSpan,它不區分大小寫。當搜索詞反過來時,它不會以大寫或小寫突出顯示。就像我搜索測試和測試那裏它不會突出顯示該單詞,如果現在我搜索測試它會突出顯示同一個單詞。
它碰到特殊字符。 –