Я пытаюсь добавить доступ к нашему быстрому коду для целей автоматизации. Конечная цель - нажать на кнопку с уникальным идентификатором.
текущая реализация выглядит так:
var body: some View {
NavigationView {
ZStack {
VStack {
HStack{
Picker(selection: _ , label: Text("")) {
Image(systemName: "list.bullet").tag().accessibility(identifier: "list")
Image(systemName: "square.grid.3x2.fill").tag().accessibility(identifier: "grid")
}
.pickerStyle(SegmentedPickerStyle())
}
}
}
}
}
Полагаю, когда .pickerStyle преобразуется в сегментированный элемент управления, а изображения становятся кнопками, xcode удаляет все признаки доступности. Консольный вывод приложения выглядит следующим образом:
SegmentedControl, 0x60000121e4c0, {{668.0, 90.0}, {150.0, 32.0}}
Button, 0x60000121e5a0, {{668.0, 90.0}, {74.0, 32.0}}, Selected
Button, 0x60000121e680, {{743.0, 90.0}, {75.0, 32.0}}
В других областях Image с .accessibility (identifier: "") работает отлично, поэтому он должен иметь какое-то отношение к pickerStyle.
Я также пробовал эти атрибуты для доступности:
.accessibility(hidden: false)
.accessibility(label: "")
.accessibility(value: "")
Кто-нибудь знает, как обойти это? Чтобы в итоге отладчик мог вывести:
SegmentedControl, 0x60000121e4c0, {{668.0, 90.0}, {150.0, 32.0}}
Button, 0x60000121e5a0, {{668.0, 90.0}, {74.0, 32.0}}, identifier: 'list', Selected
Button, 0x60000121e680, {{743.0, 90.0}, {75.0, 32.0}}, identifier: 'grid'