gpt4 book ai didi

Android 可访问性 - 有没有办法检测回话是否正在阅读内容描述

转载 作者:搜寻专家 更新时间:2023-11-01 09:37:15 26 4
gpt4 key购买 nike

我有一个 ListView,其中填充了来自服务器的数据(电话号码),并且我每 2 秒轮询一次。当 TalkBack 功能打开并且我点击列表项时,talkBack 没有机会读取整个字符串,因为刷新发生并且 talkBack 从请求开始。有没有办法检测是否正在读取内容描述的 TalkBack?谢谢。

最佳答案

ListView 依赖于 Adapter.hasStableIds() 的值以确定是否可以跨数据集更改重用膨胀 View 。

如果此方法返回false,ListView 假定更改前后的数据集不一致。因此,它不知道应该将无障碍焦点放在哪里。

但是,如果此方法返回 true 并且您的适配器在项目 ID 和数据之间保持一致的映射,则 ListView 能够将可访问性焦点保持在正确的项目上——即使它在内部更改位置数据集。

要解决此问题,您可以修改适配器以保持稳定的 ID:

class MyAdapter extends ListAdapter {
...

@Override
public boolean hasStableIds() {
return true;
}

@Override
public long getItemId(int position) {
// Return a consistent mapping between the item at a given
// position and an arbitrary (but consistent!) ID associated
// with that item.
...
}
}

关于Android 可访问性 - 有没有办法检测回话是否正在阅读内容描述,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42113448/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com