Как получить доступ к полю поиска Spotlight в Xcode? - PullRequest
0 голосов
/ 20 марта 2020

Использование Xcode 11 с симулятором iPhone 11. Попытка ввода текста в поиске Spotlight:

let springboard = XCUIApplication(bundleIdentifier: "com.apple.springboard")
springboard.swipeDown()

let spotlightSearchField = springboard.searchFields["SpotlightSearchField"]
spotlightSearchField.typeText("Some text")

Не удается найти элемент с идентификатором доступности SpotlightSearchField, хотя панель поиска Spotlight видна. Он также отсутствует в дереве элементов, если я назову debugDescription. Вывод DebugDescription не содержит никаких элементов раскрывающейся панели с подсказками Spotlight и Siri - только элементы основного экрана.

Но AccessibilityInspector может найти поле поиска Spotlight и показывает его идентификатор.

AccessibilityInspector

Итак, как мне получить доступ к этому полю в коде?

1 Ответ

0 голосов
/ 24 марта 2020

SpotlightSearchField является частью Spotlight , а не SpringBoard.

вы должны взаимодействовать с ним так:

let spotlight = XCUIApplication(bundleIdentifier: "com.apple.Spotlight")
let spotlightSearchField = spotlight.textFields["SpotlightSearchField"]
spotlightSearchField.typeText("Some text")

Удачи!

...