![](/img/trans.png)
[英]How can I make entire DIV clickable AND open child links in separate DIV?
[英]How can I make links in fromHTML clickable? (Android)
這似乎是一個微不足道的問題,但是讓我有些難過。 我想使用Html.fromHtml()加載HTML字符串,並且字符串中的任何鏈接都可以在瀏覽器中單擊並打開。
基本示例:
textView.setText(Html.fromHtml("<a href=\"http://www.google.com\">This is a link</a>"));
使用此代碼段,文本的格式就像是一個鏈接(藍色,帶下划線),但它不可點擊。 我嘗試過Linkify,但它似乎只適用於非基於HTML的鏈接。
有什么建議?
正如我所假設的那樣,解決方案很簡單:
textView.setText(Html.fromHtml("<a href=\"http://www.google.com\">This is a link</a>"));
textView.setMovementMethod(LinkMovementMethod.getInstance());
第二行以某種方式激活鏈接行為,雖然我不太確定如何。 Google Code上也解決了同樣的問題。
正如其他答案中所提到的,前進的方法是使用:
xtView.setText(Html.fromHtml("<a href=\"http://www.google.com\">This is a link</a>"));
textView.setMovementMethod(LinkMovementMethod.getInstance());
但是,如果你有任何android:autoLink值設置,這不會起作用,而不僅僅是'web',正如其他評論似乎暗示的那樣。 這意味着您可以使用此解決方案來鏈接URL,但代價是禁用/取消鏈接電話,電子郵件和地圖。
LinkMovementMethod的javadoc說它
支持單擊DPad Center或Enter的鏈接。
因此,以這種方式工作是有意義的。
並且確認,4.2.2的作品就像魅力一樣
textView.setMovementMethod(LinkMovementMethod.getInstance());
它應該是這樣的:
textView.setText(Html.fromHtml("<a href=\"http://www.google.com\">This is a link</a>"));
textView.setAutoLinkMask(Linkify.WEB_URLS);
textView.setLinksClickable(true);
在XML中應該是
<TextView
android:id="@+id/txtview"
android:autoLink="web"
android:linksClickable="true"
/>
String data="MyTest";
textView.setText(data);
textView.setText(Html.fromHtml(data));
textView.setMovementMethod(LinkMovementMethod.getInstance());
textView.setLinksClickable(true);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.