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

发布于 2024-10-29 00:57:09 字数 523 浏览 0 评论 0原文

我想在 XML 中定义一个 TextView,其中包含作为 URL 链接的文本。本质上是锚定 HTML 标记的语义:

我已经能够使用 android:autoLink="web" 属性来完成我想要的大部分操作文本视图。但是,文本必须包含 URL 并显示给用户。我想显示链接到 URL 的不同文本。

示例:我可以说,

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

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

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

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

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

I'd like to define a TextView in XML which contains text which is a link to a URL. Essentially the semantics of the anchor HTML tag: <a>

I have been able to do most of what I want with, the android:autoLink="web" attribute to TextView. However, the text has to contain the URL and it is displayed to the user. I'd like to display different text which links to the URL.

Example: I can say,

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

But then the user sees, "http://foo.com". I'd rather say something else, like "bar".

I tried defining the string in a string resource and using a link, such as

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

The string shows up properly formatted, but you cannot click on it.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

温暖的光 2024-11-05 00:57:09

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

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

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

我认为 autoLink 适用于动态设置文本时。

If you're using HTML in strings.xml for your TextView, don't use autoLink.

Instead, in your onCreate, set the movement method to use links:

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

I think autoLink is for when you're dynamically setting the text.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文