У меня есть контейнер ViewController с 2 контроллерами вида внутри. Оба этих VC имеют UICollectionView внутри. (Проверьте видео, чтобы увидеть интерфейс в действии)
https://chewycomllc -my.sharepoint.com /: v: / г / личный / iruiz_chewy_com / ET5cHAObgy5DmOWop4KRtV4BXHbwLEs1BgqX4udqJGu_xQ е = f9VQ1a
Когда верхний VC делает выбор в collectionView, нижний VC выбирает соответствующую ячейку, занимающую всю ширину (только одна ячейка видна за раз в нижнем VC). (См. Изображение для визуализации настройки интерфейса)
Когда я выбираю вторую ячейку в верхнем ВК, нижний ВК показывает вторую ячейку. Проблема заключается в том, что когда VoiceOver сфокусирован на последней ячейке верхнего VC, он перемещается к первому элементу пользовательского интерфейса в верхнем левом углу первой ячейки (индекс 0) вместо верхнего левого элемента 2-й ячейки. (См. GIF, чтобы увидеть проблему)
https://chewycomllc -my.sharepoint.com /: я: / г / личный / iruiz_chewy_com / EW7SVm4S74tEjMgKME2vK58BBtaA1WYEyL0_wjzUYkWiig е = lylo9O
Я пытался отключить доступность для ячеек, VC, collectionView. Я также попытался опубликовать уведомление о том, что экран или макет меняются. Ничто из этого не сработало, как ожидалось.
Приложение Yelp делает это правильно, когда вы смотрите изображения ресторана.