在我的 Android 应用程序中,我有带有链接的文本视图。他们每个人都在切换一个特定的事件(打开浏览器,开始另一个活动,等等......)。为了解决这个问题,我没有找到比这样做更好的解决方案:
hi there!, this is <u>a action</u> and this is <b>another action</b>. This third one goes to <a href="http://google.com>Google</a>
然后,在显示 textview 时,我使用 SpannableStringBuilder 将每个链接转换为自定义的 spannable。
我知道这很hacky。这就是为什么我想知道是否还有其他更好的方法?
我有两个想法:
是否可以使用自己的编组系统实现自定义跨度?例如自定义可跨匹配标签,如:
<div class="foo"></div>
然后我会自动检测到FooClickableSpannable
扩展ClickableSpan
fromHtml()
- 我可以使用自定义 url 方案来打开我的活动,但如果有其他选择,我不确定如何强制它不显示应用程序选择器。