使用TextView显示电子邮件,然后设置
TextView tvEmail = (TextView)this.findViewById(R.id.tvEmail);
Linkify.addLinks(tvEmail, Linkify.EMAIL_ADDRESSES);
点击上面的邮件地址会引发异常,因为邮件客户端没有找到。如何赶上这个例外?
答案 0 :(得分:2)
我已经遇到了同样的问题,我通过在实际启动null
之前创建一个检查Intent
的新类来解决它。
您需要做的就是在设置URLSpan
的文字之前替换所有TextView
范围(这意味着您无法使用setAutoLinkMask()
)。
必须这样做,因为URLSpan
的{{1}}方法不会执行任何类型的onClick()
检查。
如何成为先例:
null
可以在TextView txt = ...
txt.setLinksClickable(true);
txt.setText(SafeURLSpan.parseSafeHtml(<<YOUR STRING GOES HERE>>));
txt.setMovementMethod(LinkMovementMethod.getInstance());
中使用的各种字符串:
<<YOUR STRING GOES HERE>>
以下是"Click here: <a href=\"http://google.com\">My links</a>"
"Mail me: <a href=\"mailto:john@doe.com\">My email</a>"
... and so on...
课程的来源(我在我的应用FPlay中使用它,并且已在Android 10 +上测试过):
SafeURLSPan