UITest UIAдоступность иерархии - PullRequest
0 голосов
/ 11 марта 2020

Я установил флаг isAccessibilityElement на true в родительском представлении (в моем случае это UICollectionViewCell), и теперь все его дочерние элементы не доступны для VoiceOver, а это именно то, что мне нужно. Я установил accessibilityIdentifiers для дочерних представлений, потому что хочу получить к ним доступ в своем UITest. Проблема в том, что дочерние представления не отображаются в иерархии специальных возможностей после установки этого флага на true. Если я установлю флаг false, они станут доступны в моих UITests, но VoiceOver также будет их считывать, что не то, что я хочу.

Есть ли способ заставить дочерние представления появляться в UITests, когда для свойства isAccessibilityElement в родительском представлении установлено значение true?

1 Ответ

1 голос
/ 11 марта 2020

В настройках сборки используйте макрокоманду препроцессора в UITests Target, например NOVOICE=1. Ищите этот макрос, похожий на то, как люди сделают DEBUG=1 или COCOAPODS=1. Тогда используйте

 #if NOVOICE 
 // Make your changes to accessibility here.  Blind users won't hear all the levels, but your tests will
 #endif
...