Android TalkBack EditText - 提示与 contentDescription

标签 android android-edittext talkback

我有一个 TextView 和一个 EditText。 TextView 使用 android:labelFor="@+id/EditTextId"

EditText 也有一个表示输入示例的提示,我只想对不使用 TalkBack 的用户可见,而不是被 TalkBack 读取。

android:contentDescription="必填项" android:hint="输入示例"

TalkBack 通常会显示(我希望它如何工作):

"Mandatory field, Edit Box for Text View"

而是改为:

"Example of input, Edit Box for Text View"

最佳答案

这是可能的:

View.AccessibilityDelegate accessibilityDelegate = new View.AccessibilityDelegate() {
            @Override
            public void onInitializeAccessibilityNodeInfo(View v, AccessibilityNodeInfo info) {
                super.onInitializeAccessibilityNodeInfo(v, info);
                info.setText("Mandatory field");
            }
        };

        myEditTex.setAccessibilityDelegate(accessibilityDelegate);

这样,可访问性 TalkBack 将显示为:“必填字段”+“编辑框”+具有 android:labelFor

的 TextView

关于Android TalkBack EditText - 提示与 contentDescription,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51322159/

相关文章:

android - 在Nexus上onDragEvent()抛出nullpointer

android - EditText 自动换行

Android - 阻止 TalkBack 大声宣布 TextView 标题

android - 如何在 Jetpack Compose 上更改文本内容描述

android - Android中的"sayHello(View v)"方法"Using a Messenger"示例

android - android中的动画轮效果

android - 带有 Android 通用媒体播放器应用程序的 JSON(MediaPlayer 错误 1)

android - 在应用程序加载时隐藏软键盘

android - 如何将焦点更改为android中的下一个编辑文本?

android - 初始化时如何防止 Spinner 公告