Linkify Android的电话号码,地址和电子邮件

时间:2016-06-16 15:49:38

标签: android linkify

我有一个自定义TextView(扩展TextView),其中包含客户配置的任何文本。我需要添加功能,用户可以点击电话号码,地址和电子邮件,应用程序可以启动适当的应用程序(拨号器,地图,电子邮件)。请查看我目前的实施情况:

public class MyTextView extends TextView{        

    // constructors and styling of this view

   public void setStyle(){
        setLinksClickable(true);
        setMovementMethod(LinkMovementMethod.getInstance());
        Linkify.addLinks(this, Linkify.ALL);
       //setAutoLinkMask(Linkify.ALL);
   }

}
  1. 我的实施有什么问题?我无法点击包含电话号码,地址和电子邮件的文本。
  2. 应在textview中输入哪种格式的电话号码,地址和电子邮件才能使用此功能?
  3. 任何帮助或建议赞赏!!

    感谢。

2 个答案:

答案 0 :(得分:1)

我得到了它的工作。我将android:autoLink="all"添加到xml中的TextView元素中。 TextView中的电话号码格式不正确。这些是Linkify支持的一些电话号码格式:12345678912,+ 12345678912,1-234-567-8912,+ 1-234-567-8912,(1234)567-8912,+(1234)567- 8912。

注意:也可能有更多受支持的格式!!

由于

答案 1 :(得分:0)

您需要在设置文本后调用Linky.addLinks(this, Linkify.ALL),而不是在构造函数中调用。