到目前为止,我发现了以下不同的方式:
机芯:
TextView textView = (TextView) findViewById(R.id.TextBox);
textView.setMovementMethod(LinkMovementMethod.getInstance());
textView.setText(Html.fromHtml(strText));
自动链接:
android:autoLink="web"
Linkify:
Linkify.addLinks(text, Linkify.ALL);
答案 0 :(得分:2)
如果您只是将链接放在textview
中并添加:
<TextView
...
android:autoLink="web"/>
它会起作用。但是,它将显示整个链接。您可以使用此代码通过标记引用您的链接:
Text1.setText(
Html.fromHtml(
"<a href=\"http://www.website.com\">website</a> "));
Text1.setMovementMethod(LinkMovementMethod.getInstance());
此处它会在textview
中将您的链接显示为网站,而不是全部显示。
所以我认为这是一个更好的方法来制作最后一个超链接,它是用户友好的。
答案 1 :(得分:1)
所有这些方法应该绰绰有余。如果他们无法解决您的具体标准,请详细说明您的问题。
我可以添加的另一个是 Strings.xml :
<string name="example">Example link to email: <a href="mailto:example@links.com?Subject=Example" target="_top">example@links.com</a></string>
我的偏好是使用自动链接方法:
android:autoLink="web"
或
android:autoLink="email"
我喜欢这种方法的原因是它的灵活性和简单性。你非常具体地告诉android你希望这个文本是什么类型的链接,所以它可以被正确解析,例如打开Chrome浏览器或Gmail等。