Android TextView Linkify问题与电话号码和应用程​​序版本号

grz*_*aks 1 android android-widget

我有TextView和autoLink功能的问题.

我的应用程序中有一个关于屏幕的信息,例如支持电话号码,电子邮件地址,网站URL和应用程序版本,如01.01.01

在textView上设置autoLink ="all"后,所有值都链接正常 - 除了版本号01.01.01也链接为电话号码.

有没有办法从链接中排除这个文本片段?

Fed*_*dor 9

只是不要使用autoLink,链接代码中的文本.使用Linkify类很容易.

private static final String phoneRegex="123\.456\.789";//you can just place your support phone here
private static final Pattern phoneMatcher = Pattern.compile(phoneRegex);

public static void linkify(TextView text){
    Linkify.addLinks(text, Linkify.EMAIL_ADDRESSES);
    Linkify.addLinks(text, Linkify.WEB_URLS);
    Linkify.addLinks(text, phoneMatcher, "tel:");
}
Run Code Online (Sandbox Code Playgroud)

您无需修改​​网址和电子邮件表达式.但是你应该为手机指定你自己的表达方式.它不需要是一个匹配所有手机的表达式.它只需要匹配您的特定支持电话.