我想在文字视图中突出显示特定单词(更具体地类似于Twitter供稿)。这个词可能会出现多次。下面我会从twitter发表一个例子。突出显示字符串中的特定字词
“孟买主冲击波!#Sachin。古今中外最伟大的球员。板球#sachin的传说。”
这里我想强调与特定单词“#Sachin”颜色。另外请注意,我们不知道这个词可能在整个字符串中重复多少次。任何人都可以帮助我解决这个问题。
我想在文字视图中突出显示特定单词(更具体地类似于Twitter供稿)。这个词可能会出现多次。下面我会从twitter发表一个例子。突出显示字符串中的特定字词
“孟买主冲击波!#Sachin。古今中外最伟大的球员。板球#sachin的传说。”
这里我想强调与特定单词“#Sachin”颜色。另外请注意,我们不知道这个词可能在整个字符串中重复多少次。任何人都可以帮助我解决这个问题。
使用下面的代码:
public CharSequence linkifyHashtags(String text) {
SpannableStringBuilder linkifiedText = new SpannableStringBuilder(text);
Pattern pattern = Pattern.compile("@\\w");
Matcher matcher = pattern.matcher(text);
while (matcher.find()) {
int start = matcher.start();
int end = matcher.end();
String hashtag = text.substring(start, end);
ForegroundColorSpan span = new ForegroundColorSpan(Color.BLUE);
linkifiedText.setSpan(span, 0, hashtag.length(), 0);
}
return linkifiedText;
}
@ user2558882:谢谢..这是一个有用的链接。我试了一下,为我工作。 –
不能正常工作... –
This is working one http://stackoverflow.com/a/17849313/3736955 –
http://stackoverflow.com/questions/3282940/set-color-of-textview-span-in-android – shaish
你应该尝试的API演示其可用通过sdk经理。他们在那里有一个很好的例子。 –
正是你想要的:[如何在Android中使用正则表达式对文本进行着色](http://stackoverflow.com/q/17848858/2558882)。 – Vikram