Android:Linkify TextView

我有文字视图,我需要链接。这是我在做什么

TextView text = (TextView) view.findViewById(R.id.name);
text.setText("Android...Update from Android");
Pattern pattern = Pattern.compile("Android");
String scheme = "www.android.com";
Linkify.addLinks(text, pattern, scheme);

文本视图正确显示文本“Android …从Android更新”,但我面临两个问题。

1)我的文本字符串有两个字符串“Android”的实例。所以,这两个文本都是链接的。我只想把第一个事情联系起来。我该怎么办?

2)当我点击linkfy文本时,它打开浏览器,但URL是奇怪的。它尝试打开的URL是“www.comandroid”。我不知道这里出了什么问题。 URL中的文本“android”正在被替换。当链接文本时,我做错了什么

任何帮助将高度赞赏。

我创建了一个静态方法:

/**
 * Add a link to the TextView which is given.
 * 
 * @param textView the field containing the text
 * @param patternToMatch a regex pattern to put a link around
 * @param link the link to add
 */
public static void addLink(TextView textView, String patternToMatch,
        final String link) {
    Linkify.TransformFilter filter = new Linkify.TransformFilter() {
        @Override public String transformUrl(Matcher match, String url) {
            return link;
        }
    };
    Linkify.addLinks(textView, Pattern.compile(patternToMatch), null, null,
            filter);
}

而OP可以简单地使用它:

addLink(text, "^Android", "http://www.android.com");
翻译自:https://stackoverflow.com/questions/4746293/android-linkify-textview

转载注明原文:Android:Linkify TextView