Swift 4 pickerWheel.adjust не может найти текущее значение 'Mai 4' в возможных значениях
Я хочу написать тест, и мне нужно настроить колесо выбора. У моего pickerWheel есть несколько строк, и я обращаюсь к нему с помощью:
pickerWheels[0].adjust(toPickerWheelValue: "1. Mai")
Это выдает мне ошибку:
Ошибка подтверждения::0: Внутренняя ошибка: невозможно найти текущее значение 'Mai 4' в возможных значениях... 4. Mai
Таким образом, "Mai 4" на самом деле в возможных значениях, но в неправильном формате. Есть ли способ это исправить?
Я уже прочитал https://forums.developer.apple.com/thread/16104 но.adjust отлично работает для моих разных строк.
0 ответов
Это старая проблема с реализациями UIPickerView с использованием переопределения viewForRow вместо titleForRow. Он восходит к 2014 году и не имеет решения по состоянию на август 2019 года:Apple Developer Thread
Одно из простых исправлений - реализовать переопределение titleForRow средства выбора для тестирования пользовательского интерфейса и вернуться к обычно более сложному методу viewForRow в рабочей среде.
В качестве альтернативы, если вы можете обойтись только первой и последней записями в тесте представления средства выбора, используйте методы swipeUp() и swipeDown(). Они выберут первый или последний элементы соответственно независимо от текста или количества полей. Что-то типа:
let pickerWheel = app.pickers.children(matching: .pickerWheel).element
pickerWheel.swipeUp()
pickerWheel.tap()
Но adjustToPickerWheelValue полностью и полностью не работает. Текущая запись радара:Тесты pickerView не пройдены