【问题标题】:talkback calls my content description twice对讲呼叫我的内容描述两次
【发布时间】:2019-03-05 18:44:39
【问题描述】:

我有一个项目在其托管活动打开时会窃取焦点。

但在对讲模式下,它会被读取两次。

1) 我如何定义一个项目在它打开后立即读取?

2) 什么会导致其内容描述被阅读两次?

3) 有没有办法定义点击后要阅读的内容描述?

我看到了这个doc,但没有找到答案。

【问题讨论】:

    标签: android accessibility talkback android-a11y


    【解决方案1】:

    这个问题缺乏一些细节,但这里有一些答案。

    1 - 屏幕阅读器将自动聚焦并阅读屏幕上的第一个视图(从右到左,从上到下)。这是默认行为,不应更改。

    2 - 在某些情况下,屏幕阅读器可能会在显示您的内容时执行不同的操作。例如,当显示Dialog 时,TalkBack 的默认行为是宣布标题并关注第二个视图。如果您手动要求读者将注意力集中在标题上,它可能会被阅读两次。

    3 - 您可以使用 android:contentDescription 在 XML 中定义要读取的文本,或者使用 view.setContentDescription(textToRead) 在代码中定义要读取的文本

    【讨论】:

      【解决方案2】:

      如果外部容器是“可聚焦的”,那么它可能会宣布内容两次。 例如:

      <FrameLayout focusable='true'>
          <TextView/>
      </FrameLayout>
      

      所以,对我来说,解决方法是让外部容器“不可聚焦”

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-03-20
        • 1970-01-01
        相关资源
        最近更新 更多