搜索并突出显示字符串中的搜索词

时间:2014-04-17 11:38:50

标签: java android text

我正在使用此代码... 它运作良好......

  String x = showdata.get(SearchResults.TAG_SHOP_SECTION_ITEM_DESC);
    int positions[] = new int[100];
    Spannable WordtoSpan = new SpannableString(x);  
    int index = 0, i = 0;
    while (index != -1)
    {
        index = x.indexOf(MainActivity.SearchWord, index);
        if (index != -1)
        {      
            WordtoSpan.setSpan(new ForegroundColorSpan(Color.RED), index, 
                    index+MainActivity.SearchWord.length()
                    , Spannable.SPAN_COMPOSING);
            index++;
            i++;
        }
    }
    itemDESC.setText(WordtoSpan);

然而,当使用阿拉伯语时,它似乎会从字符串的其余部分中断搜索字,因为在很多情况下阿拉伯字母相互连接,而不是像未连接的英文字母。所以在阿拉伯语中找到了搜索词,颜色发生了变化,但也将它与下一个字母分开了!

0 个答案:

没有答案