要在Android应用中实现多词标记的功能,可以使用SpannableString类来处理文本中的标记。以下是一个示例代码,演示了如何在文本中标记多个词汇。
首先,在布局文件中添加一个TextView来显示文本:
然后,在Activity或Fragment中,使用SpannableString类来处理文本并进行标记:
TextView textView = findViewById(R.id.textView);
String text = "Android AppSearch 多词标记";
String[] keywords = {"Android", "AppSearch", "多词标记"};
SpannableString spannableString = new SpannableString(text);
for (String keyword : keywords) {
int startIndex = text.indexOf(keyword);
int endIndex = startIndex + keyword.length();
if (startIndex >= 0) {
spannableString.setSpan(new ForegroundColorSpan(Color.RED), startIndex, endIndex, Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
}
}
textView.setText(spannableString);
在上面的代码中,我们首先获取到要标记的文本和关键词数组。然后,使用SpannableString类创建一个可变的文本对象,并使用for循环遍历关键词数组。在每次循环中,我们使用indexOf方法找到关键词在文本中的起始位置和结束位置,并使用setSpan方法将这部分文本标记为红色。
最后,将标记后的SpannableString对象设置给TextView显示即可。
这样,你就可以在Android应用中实现多词标记的功能了。