gpt4 book ai didi

android - 如何修复 Html.fromHtml 链接焦点可见性问题(在 ICS 和 Honeycomb 中)?

转载 作者:可可西里 更新时间:2023-11-01 19:07:22 26 4
gpt4 key购买 nike

要让 TextView 显示(并友好地处理)Html 字符串,我的代码如下所示:

// itemHtml is a String of HTML defined above

TextView itemContent = (TextView) findViewById(R.id.itemContent);
itemContent.setText(Html.fromHtml(itemHtml));
itemContent.setMovementMethod(LinkMovementMethod.getInstance());

如果 Html 字符串有一个链接,TextView 会产生可点击和聚焦的链接。当用户将焦点放在特定链接上时(例如,通过使用方向键),链接文本会以某种重要方式发生变化,以表明已获得焦点。

问题是,当我使用带有方向键的设备使用 Honeycomb(例如 Google TV)或 Ice Cream Sandwich 风格的 Android 测试相同的模式时,文本中的链接没有明显表明该链接具有焦点.

我知道它正在获得焦点,因为当您按下回车键时,它会执行指定的操作。您甚至可以在文本中的各个链接之间移动;您只能猜测当前所在的链接,这会导致非常糟糕的用户体验。

我做错了什么吗?有什么方法可以解决这个问题或解决这个问题吗?

最佳答案

编辑:在有点疯狂之后,我终于认为我找到了解决方案。但是,此解决方案仅适用于 Honeycomb。 ICS 仍未解决!

从 API 11 开始,Android 在 TextViews 上有一个新设置,用于定义文本是否可选择。

您可以在 TextView 上使用 setTextIsSelectable(true) 设置它,或者在 XML 布局中定义它 android:textIsSelectable="true"

最好用 XML 定义它,这样保持应用程序向后兼容就很简单了。只需确保您的目标版本 >= 11,否则您可能会遇到错误。

关于android - 如何修复 Html.fromHtml 链接焦点可见性问题(在 ICS 和 Honeycomb 中)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7869506/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com