我正在开发一个日历应用程序,我想让视障用户可以访问它。 CalendarScreen有一个ScrollView,它有一个子节点DayViewGroup,它包含并列出了EventViews。对于每个EventView,我设置了contentDescription。所有内容都以编程方式创建和添加。
使用TalkBack时,目的是让用户能够轻扫整个日的EventView并听取contentDescription。我发现我只能通过ScrollView当前显示的事件视图或略微偏离屏幕的事件进行扫描。
我的假设是ScrollView正在进行一些优化,只渲染屏幕的相关部分,并删除未从ViewHierarchy显示的EventView或使它们不可见。无论如何,结果是它们不受TalkBack和可访问性的影响。
我想我会覆盖DayViewGroup中的getAccessibilityNodeProvider,并在那里提供信息。
谢谢!