ios - 如何让 VoiceOver 忽略不可见的 UICollectionViewCell
问题描述
我有一个 ViewController 容器,里面有 2 个 View Controller。这两个 VC 里面都有一个 UICollectionView。(查看视频以查看 UI 的实际操作) https://chewycomllc-my.sharepoint.com/:v:/g/personal/iruiz_chewy_com/ET5cHAObgy5DmOWop4KRtV4BXHbwLEs1BgqX4udqJGu_xQ?e=f9VQ1a
当顶部的 VC 在 collectionView 上进行选择时,底部的 VC 会选择相应的单元格(在底部的 VC 中一次只能看到 1 个单元格)。(参见图像以可视化 UI 设置)
当我选择顶部 VC 上的第二个单元格时,底部 VC 显示第二个单元格。问题是,当 VoiceOver 关注顶部 VC 的最后一个单元格时,它会导航到第一个单元格左上角的第一个 UI 元素(索引 0),而不是第二个单元格的左上角元素。(查看 GIF 以查看问题) https://chewycomllc-my.sharepoint.com/:i:/g/personal/iruiz_chewy_com/EW7SVm4S74tEjMgKME2vK58BBtaA1WYEyL0_wjzUYkWiig?e=lylo9O
我尝试在单元格、VC、collectionView 上禁用可访问性。我还尝试发布屏幕或布局更改的通知。它没有按预期工作。
当您查看餐厅的图像时,Yelp 应用程序会正确执行此操作。
解决方案
推荐阅读
- php - 将 noindex 标头添加到 php 重定向文件
- c# - 如何将动态字段值添加到列表中
- mqtt - android oreo/pie - paho mqtt 无法在后台启动活动
- c# - ASP.NET / XAML 用户界面
- c# - 使用进程与线程编写 Azure 表
- sql - SQLite - 基于 sqlite_master 查询的一个班轮/命令删除表?
- javascript - 从模型中获取画布高度和宽度并创建具有这些尺寸的画布
- c# - LINQ 只返回集合中的一项
- java - 在 JavaFX 中调整图像的不透明度
- javascript - 在 Laravel 中注册 ServiceWorker