我有一个 CheckedTextBox,其文本由两个 SpannableStrings 组成,其中一个是 URLSpan。
我的问题是,我该如何让用户可以通过每个跨度移动可访问性焦点,最终关注 URLspan 本身?setMovementMethod
并且setLinksClickable
似乎对我不起作用。
SpannableStringBuilder builder = new SpannableStringBuilder();
SpannableString label = new SpannableString(getString(R.string.label));
label.setSpan(new ForegroundColorSpan(getResources().getColor(R.color.text_color_primary)), 0, label.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
builder.append(label);
SpannableString link = new SpannableString(getString(R.string.link);
link.setSpan(new URLSpan(mUrl), 0, link.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE);
builder.append(link);
builder.append(".");
mCheckedTextBox.setText(builder);
//The following two methods do not work for what I'm trying to accomplish:
mCheckedTextBox.setMovementMethod(LinkMovementMethod.getInstance());
mCheckedTextBox.setLinksClickable(true);
我查看了 Android Accessibility Help 文档,似乎只要用户听到提示音并且可以在本地上下文菜单中看到链接,就足够了。但是,我想看看我是否可以加倍努力,使用户能够滚动并关注文本的链接部分。 https://support.google.com/accessibility/android/answer/6378148?hl=en
任何帮助,将不胜感激。