【问题标题】:What is the difference between Android focusable and importantForAccessibility when using TalkBack?使用 TalkBack 时,Android focusable 和 importantForAccessibility 有什么区别?
【发布时间】:2017-07-25 16:40:20
【问题描述】:

我注意到在许多情况下android:importantForAccessibility="yes" 可以替换为android:focusable="true",并且与 TalkBack 的工作方式完全相同。什么时候应该使用android:importantForAccessibility="yes" 而不是使用focusable?

Android 将android:importantForAccessibility 定义为:

描述此视图对于可访问性是否重要。如果它很重要,视图会触发辅助功能事件并报告给查询屏幕的辅助功能服务。注意:虽然不推荐,但可访问性服务可能会决定忽略此属性并对视图树中的所有视图进行操作。 https://developer.android.com/reference/android/view/View.html#attr_android:importantForAccessibility

android:focusable="true" 为:

控制视图是否可以获取焦点。默认情况下,这是“自动”,它让框架确定用户是否可以将焦点移动到视图。通过将此属性设置为 true,可以让视图获得焦点。通过将其设置为“false”,视图将不会获得焦点。此值不会影响直接调用 requestFocus() 的行为,无论此视图如何,它都会始终请求焦点。它只影响焦点导航尝试移动焦点的位置。 https://developer.android.com/reference/android/view/View.html#attr_android:focusable

【问题讨论】:

    标签: android android-view talkback


    【解决方案1】:

    Focusable 指的是“输入焦点”和“键盘焦点”。可聚焦控件是可以接收输入焦点(光标)或键盘焦点的控件……这基本上意味着用户可以使用轨迹球/键盘导航来突出显示这些控件并通过“选择”操作与这些控件交互……示例:在键盘上按 Enter。

    isImportantForAccessibility 指的是可访问性焦点。这与输入焦点高度相关,但非常不同。例如,输入聚焦“信息丰富”的纯文本内容是没有意义的。但是,允许段落获得可访问性焦点非常重要。这允许使用 TalkBack 的用户集中注意力并听到此类信息控制的语音反馈。

    如果用户使用键盘导航,输入焦点和辅助功能焦点将相同,但如果用户使用 TalkBack 滑动导航,则输入焦点和辅助功能焦点可能不同。

    例如:

    光标可能位于 EditText 框中,而可访问性焦点位于其下方的段落上,通过 VoiceFeedback 向用户解释该控件的用途。

    猜你喜欢
    • 2012-12-12
    • 1970-01-01
    • 1970-01-01
    • 2018-04-09
    • 2011-09-19
    • 1970-01-01
    • 2012-09-01
    • 2013-01-25
    • 2020-06-23
    相关资源
    最近更新 更多