Android - 从TextView

时间:2017-02-25 17:41:38

标签: android search textview

我有一个TextView,我可以搜索一些单词,以便它们被标记。

TextView被命名为textView,它显示文本,我有一个EditText Etxt来获取搜索到的单词和一个Button来开始搜索。上面的代码是搜索的代码。该应用程序将所有找到的单词标记为大而斜体。我有一个TextView text_total,显示找到的单词数。

问题:但如果在显示的屏幕下方的文本中有搜索词,则必须滚动并找到标记的词:

int total = 0;
String word_search = Etxt.getText().toString().trim().toLowerCase();
String fullTxt = textView.getText().toString();
String[] array = fullTxt.split("\n");
String word;
StringBuilder st = new StringBuilder();
for (int i = 0; i < array.length; i++) {
    word = array[i];
    if (word.toLowerCase().contains(word_search)) {
        String abc = word.trim();
        st.append("<b><i>" + abc + "</i></b>");
        total++;
    } else {
        st.append(word);
    }
    st.append("<br>");
}
textView.setText(Html.fromHtml("" + st));
text_total.setText("Ergebnisse: " + total);

现在,我遇到了问题,因为文字太长,无法查看所有搜索结果。我希望我有一个'后退'和一个'下一个'按钮,如果我点击下一个按钮并且找到的单词自动进入显示的屏幕,视图将转到下一个结果。

有谁知道如何编码?

这非常重要。谢谢你的帮助!

1 个答案:

答案 0 :(得分:0)

试试这个。 将所有结尾的单词放在列表中

  

列出单词= new ArrayList();

将单词添加到列表中

  

字词。(word_search);

最后在下一个和上一个按钮中,您需要检查列表中单词的位置

  

words.get(位置)

了解link

中的内容