0

我正在尝试使用 linkify 制作可点击的文本。单击名称时,我想调用电子邮件意图。但是,电子邮件地址与 linkify 不同。当您的模式为“特定名称”时,是否有任何方法通过 linkify 执行 mailto:specificname@gmail.com ?这是我的示例代码:

final TextView tx1=new TextView(this);
tx1.setAutoLinkMask(0);
Pattern pattern = Pattern.compile("John Doe");
Linkify.addLinks(tx1, pattern, "mailto:johndoe@gmail.com");

正如您在此处看到的,此问题是电子邮件意图填写了主题:“johndoe@gmail.comJohn Doe”。这是一个明显的结果,但我不知道如何截断方案中的模式文本....感谢您的帮助。

ps如果您知道不涉及linkify的替代方法,您也将获得荣誉:)

4

2 回答 2

2

我有一个非 Linkify 的答案:

 final TextView tx1 = (TextView) findViewById(R.id.email);
 String name = "John Doe";
 String email = "johndoe@gmail.com";

 tx1.setText(Html.fromHtml("<a href=\"mailto:"+email+"\">"+name+"</a>"));
 tx1.setMovementMethod(LinkMovementMethod.getInstance());

但可能有更好的方法来做到这一点。

于 2011-10-25T03:39:12.197 回答
0

对于这种情况,您可以使用 TransformFilter。 链接变换过滤器

于 2016-06-16T13:45:18.933 回答