android - 我想在 XML 中定义一个 Android TextView,其中包含指向 URL 的链接的文本

标签 android url text hyperlink

我想在 XML 中定义一个 TextView,其中包含作为 URL 链接的文本。本质上 anchor HTML 标签的语义:<a>

我已经能够用 android:autoLink="web" 做我想做的大部分事情了属性到 TextView。但是,文本必须包含 URL 并将其显示给用户。我想显示链接到 URL 的不同文本。

例子:我可以说,

<TextView android:text="http://foo.com" android:autoLink="web">

但随后用户看到“http://foo.com”。我宁愿说别的,比如“酒吧”。

我尝试在字符串资源中定义字符串并使用链接,例如

<string name="test"><a href="foo.com">bar</a></string>

字符串显示格式正确,但您无法点击它。

最佳答案

如果您在 TextView 的 strings.xml 中使用 HTML,请不要使用自动链接。

相反,在您的 onCreate 中,将移动方法设置为使用链接:

    TextView msg = (TextView) findViewById(R.id.text);
    msg.setMovementMethod(LinkMovementMethod.getInstance());

我认为 autoLink 适用于动态设置文本的情况。

关于android - 我想在 XML 中定义一个 Android TextView,其中包含指向 URL 的链接的文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5525296/

相关文章:

javascript - 如何使用 Javascript/JQuery 计算字符串变量的宽度(以像素为单位)

file - 如何将外部文件中的文本插入到 div 中?

r - R中条形图中的文本

java - Android SQLite 查询某月某天

go - 在golang中打开一个url并读取重定向的url

Javascript正则表达式将网站上的所有链接从http转换为https

javascript - ASP.NET MVC路由和路径是js文件

java - 接口(interface)字段在 Android Studio 中显示为空

javascript - 有没有办法让 JavaScript 在缩放时更改文本大小?

android - LinearProgressIndicator flutter 使用