小编All*_* Z.的帖子

修改辅助功能焦点顺序

是否可以更改辅助功能焦点顺序?例如,如果我有3个视图并排,使用ids view1,view2和view3,当用户从view1向右滑动时,是否有一种简单的方法可以将辅助功能焦点转到view3?

这是我尝试过的:

我在线性布局中有以下内容.

<ImageView
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:id="@+id/imageView"
    android:focusable="true"
    android:nextFocusUp="@+id/imageView3"
    android:nextFocusDown="@+id/imageView3"
    android:nextFocusRight="@+id/imageView3"
    android:nextFocusLeft="@+id/imageView3"
    android:nextFocusForward="@+id/imageView3"
    android:src="@drawable/ic_launcher"/>

<ImageView
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:id="@+id/imageView2"
    android:focusable="true"
    android:src="@drawable/ic_launcher"/>

<ImageView
    android:layout_width="30dp"
    android:layout_height="30dp"
    android:id="@+id/imageView3"
    android:focusable="true"
    android:nextFocusUp="@+id/imageView2"
    android:nextFocusDown="@+id/imageView2"
    android:nextFocusRight="@+id/imageView2"
    android:nextFocusLeft="@+id/imageView2"
    android:nextFocusForward="@+id/imageView2"
    android:src="@drawable/ic_launcher"/>
Run Code Online (Sandbox Code Playgroud)

然后,我启动它并将可访问性焦点放在第一个imageView上.在向右滑动以移动到下一个项目时,我希望它将可访问性焦点移动到imageView3,而是转到imageView2.

android accessibility android-a11y

12
推荐指数
1
解决办法
1万
查看次数

更改Android中对讲的语音

当ImageView通过可访问性进行聚焦时,我正在尝试更改TalkBack宣布的文本.

Android文档声明我们应该创建一个AccessibilityDelegate,并覆盖onPopulateAccessibilityEvent(我正在使用支持库,因为我也支持GingerBread)

因此,我的代码如下:

public static void setImageDelegate(View view) {
    AccessibilityDelegateCompat delegate = new AccessibilityDelegateCompat() {
        @Override
        public void onPopulateAccessibilityEvent(View host, AccessibilityEvent event) {
            event.getText().add(event.getContentDescription() + ", image");
        }
    };
    ViewCompat.setAccessibilityDelegate(view, delegate);
}
Run Code Online (Sandbox Code Playgroud)

当我在我的imageview上调用此函数时,委托被设置,但未读取修改后的文本.它只是读取原始内容描述.我做错了什么或遗漏了一些关于辅助功能的东西?

单步执行代码,似乎添加了正确的文本,但仍然没有更改语音文本.

注意:上面是一个人为的例子,可以使用内容描述,但我试图弄清楚为什么它在我自定义视图上尝试之前不起作用.

android accessibility talkback

3
推荐指数
1
解决办法
3898
查看次数

标签 统计

accessibility ×2

android ×2

android-a11y ×1

talkback ×1