1

在 WebView 中阅读电话号码时,我对 TalkBack 屏幕阅读器服务有点头疼,我似乎找不到解决方案。这是我正在读入 WebView 的一些 html 代码片段:

<li>Call <a href="tel:18007848669">1-800-QUIT-NOW(1-800-784-8669)</a> for phone support</li>

屏幕阅读器将此读取为“呼叫一到八百现在退出一到八百链接”。有没有办法强制它/信号以不同的方式阅读它?我需要以更自然的格式阅读它,即“八百”。

4

2 回答 2

0

为您的 editText 或 textView 使用以下 Accessibility Deligate

@Override
public void onInitializeAccessibilityNodeInfo(View host, AccessibilityNodeInfo info) {
    super.onInitializeAccessibilityNodeInfo(host, info);
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH) {

        switch (host.getId()) {
            case R.id.tv_bookingID:
                if (((TextView) host).getText().length() > 1) {
                    sb.delete(0, sb.length());
                    for (char c : ((TextView) host).getText().toString().toCharArray()) {
                        sb.append(c).append(" ");
                    }
                    //change text for talkback
                    info.setText(null);
                    info.setContentDescription(sb.toString().trim());

                }
                break;
        }//switch
    }//if
}
于 2016-08-24T22:04:55.290 回答
0

对于这个元素,android:contentDescription="一八百现在退出"

于 2015-10-23T15:08:09.170 回答