nestedscrollview中子视图的可访问性焦点

时间:2015-06-11 09:12:55

标签: android accessibility

我对NestedScrollView子视图的辅助功能焦点有疑问。目前,可访问性模式期间的焦点迭代仅迭代视图在屏幕中可见的视图。是否有布局配置,我可以设置在焦点迭代期间滚动NestedScrollview。目前,焦点迭代在到达当前屏幕上的最后一个可见视图时停止,而不是将滚动视图滚动到下一个可聚焦视图。

使用Android版本4.3(Galaxy nexus)和5.1.1(Nexus 4)进行测试。对讲版本是4.2.0。

<android.support.design.widget.CoordinatorLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/clMain_content"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:fitsSystemWindows="true"
    android:focusable="true">

  <android.support.design.widget.AppBarLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:id="@+id/lblAppbar"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"
    android:fitsSystemWindows="true"
    android:contentDescription="@null">

    <android.support.design.widget.CollapsingToolbarLayout
        android:id="@+id/lblCollapsingToolbar"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        app:layout_scrollFlags="scroll|exitUntilCollapsed"
        app:expandedTitleTextAppearance="@android:color/transparent"
        android:fitsSystemWindows="true"
        app:toolbarId="@+id/toolbar"
        app:contentScrim="@color/theme_primary"
        app:statusBarScrim="@color/theme_primary_dark"
        android:contentDescription="@null">

    ...

    </android.support.design.widget.CollapsingToolbarLayout>


    </android.support.design.widget.AppBarLayout>

  <android.support.v4.widget.NestedScrollView
    android:id="@+id/nsvScrollview"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:contentDescription="@null"
    app:layout_behavior="@string/appbar_scrolling_view_behavior"
    android:fillViewport="true">

    <LinearLayout
      android:layout_width="match_parent"
      android:layout_height="wrap_content"
      android:contentDescription="@null"
      android:orientation="vertical">

      ... - child views here

    </LinearLayout>

  </android.support.v4.widget.NestedScrollView>

</android.support.design.widget.CoordinatorLayout>

1 个答案:

答案 0 :(得分:0)

在这种情况下,您可以使用宣布可访问性选项。 anounceForAccessibility 在API级别16中添加 公共无效announceForAccessibility(字符序列文本) 用于发送AccessibilityEvent.TYPE_ANNOUNCEMENT AccessibilityEvent的公告的便捷方法,该公告与某种类型的上下文更改相关,对于这些上下文更改而言,没有一种适合表示UI转换的事件。例如,宣布一本书中的新页面。如果未启用辅助功能,则此方法无效。