Инструменты iOS - Ошибка UIADatePicker - Элемент не виден
Я пытаюсь выбрать значение из UIPickerWheel в моем приложении. Колесо выбора появляется, когда я щелкаю поле даты, и значения: Месяц (январь, февраль,...), Дата (1,2,...) и Год (2013, 2012...)
Я получаю правильное значение, когда я делаю следующее
**
selectedvalue = target.frontMostApp().mainWindow().pickers()[0].wheels()[0].value();
UIALogger.logDebug(selectedValue)
**
Тем не менее, когда я пытаюсь нажать на колесо с помощью следующего кода:
target.frontMostApp().mainWindow().pickers()[0].wheels()[0].tap();
Я получаю сообщение об ошибке - target.frontMostApp (). MainWindow(). Pickers()[0].wheels()[0] не может быть нажата, потому что элемент не виден в строке xxx yyyyscript
Я проверил другие темы на UIAPickerWheel, и этот конкретный шаг кажется достаточно простым. Тем не менее, я сбит с толку, поскольку значение извлекается из колеса, но постукивание не выполняется
Любая помощь будет принята с благодарностью!
Спасибо и привет, Винай
1 ответ
У меня точно такая же проблема, указатель даты отсутствует в дереве
UIAWindow "(null)" {{0, 0}, {320, 568}}
elements: {
UIANavigationBar "Step 1: My Details" {{0, 20}, {320, 44}}
elements: {
UIAImage "(null)" {{0, 0}, {320, 64}}
elements: {
UIAImage "(null)" {{0, 64}, {320, 0.5}}
}
UIAButton "UINavigationBarBackIndicatorDefault.png" {{8, 32}, {12.5, 20.5}}
UIAStaticText "Step 1: My Details" {{88.5, 28}, {143, 27}}
}
UIAScrollView "(null)" {{0, 64}, {320, 310}}
elements: {
UIATextField "Ird" {{0, -4}, {320, 50}}
UIAImage "(null)" {{316.5, -4}, {3.5, 310}}
UIATextField "FirstName" {{0, 46}, {320, 50}}
UIATextField "MiddleName" {{0, 96}, {320, 50}}
UIATextField "LastName" {{0, 146}, {320, 50}}
UIATextField "DOB" {{0, 196}, {320, 50}}
UIAButton "Next" {{10, 256}, {300, 50}}
UIAImage "(null)" {{0, 302.5}, {320, 3.5}}
}
}
В текстовом поле DOB для inputView установлено значение datepick
Используя Reveal, я вижу, что средство выбора даты теперь находится под uitexteffectsview
Чтобы в основном ответить на мою и вашу проблему с mechanic.js, вы можете выбрать все uipickers с этим
$('window > picker')[0]
Мне удалось получить полный журнал, запустив этот
UIALogger.logDebug("Pickers " + UIATarget.localTarget().logElementTree())
Вот полный журнал
elements: {
UIAApplication "MyApp" {{0, 20}, {320, 548}}
elements: {
UIAWindow "(null)" {{0, 0}, {320, 568}}
elements: {
UIANavigationBar "Step 1: My Details" {{0, 20}, {320, 44}}
elements: {
UIAImage "(null)" {{0, 0}, {320, 64}}
elements: {
UIAImage "(null)" {{0, 64}, {320, 0.5}}
}
UIAButton "UINavigationBarBackIndicatorDefault.png" {{8, 32}, {12.5, 20.5}}
UIAStaticText "Step 1: My Details" {{88.5, 28}, {143, 27}}
}
UIAScrollView "(null)" {{0, 64}, {320, 310}}
elements: {
UIATextField "Ird" {{0, -4}, {320, 50}}
UIAImage "(null)" {{316.5, -4}, {3.5, 310}}
UIATextField "FirstName" {{0, 46}, {320, 50}}
UIATextField "MiddleName" {{0, 96}, {320, 50}}
UIATextField "LastName" {{0, 146}, {320, 50}}
UIATextField "DOB" {{0, 196}, {320, 50}}
UIAButton "Next" {{10, 256}, {300, 50}}
UIAImage "(null)" {{0, 302.5}, {320, 3.5}}
}
}
UIAWindow "(null)" {{0, 0}, {320, 568}}
elements: {
UIAPicker "(null)" {{0, 352}, {320, 216}}
elements: {
UIAPickerWheel "(null)" {{29, 314.5}, {135, 291}}
UIAPickerWheel "(null)" {{169, 314.5}, {46, 291}}
UIAPickerWheel "(null)" {{220, 314.5}, {72, 291}}
}
}
UIAWindow "(null)" {{0, 0}, {320, 568}}
elements: {
UIAStatusBar "(null)" {{0, 0}, {320, 20}}
elements: {
UIAElement "Swipe down with three fingers to reveal the notification center., Swipe up with three fingers to reveal the control center, Double-tap to scroll to top" {{6, 0}, {38, 20}}
UIAElement "3 of 3 Wi-Fi bars" {{49, 0}, {13, 20}}
UIAElement "9:49 AM" {{137, 0}, {47, 20}}
UIAElement "100% battery power" {{290, 0}, {25, 20}}
}
}
}
}