2015-12-11 3 views
3

Я пытаюсь получить состояние тумблера в своем родном приложении.Calabash: Получить состояние тумблера

Это запрос самого переключателя, когда ON:

query "Switch id:'quadrant_buzz'" 

и его результаты

[ 
[0] { 
       "class" => "android.widget.Switch", 
        "tag" => nil, 
      "description" => "android.widget.Switch{29ddf658 VFED..C. ........ 877,0-1017,81 #7f10017f app:id/quadrant_buzz}", 
        "id" => "quadrant_buzz", 
        "text" => "", 
       "visible" => true, 
        "rect" => { 
      "height" => 81, 
      "width" => 140, 
       "y" => 1303, 
       "x" => 877, 
     "center_x" => 947, 
     "center_y" => 1343 
    }, 
       "enabled" => true, 
    "contentDescription" => nil 
}] 

Это результат запроса, когда переключатель выключен:

[ 
[0] { 
       "class" => "android.widget.Switch", 
        "tag" => nil, 
      "description" => "android.widget.Switch{29ddf658 VFED..C. ........ 877,0-1017,81 #7f10017f app:id/quadrant_buzz}", 
        "id" => "quadrant_buzz", 
        "text" => "", 
       "visible" => true, 
        "rect" => { 
      "height" => 81, 
      "width" => 140, 
       "y" => 1213, 
       "x" => 877, 
     "center_x" => 947, 
     "center_y" => 1253 
    }, 
       "enabled" => true, 
    "contentDescription" => nil 
}] 

Я не уверен, как проверить его состояние включения/выключения. Когда я нажимаю/касаюсь переключателя, в возвращаемом запросе ничего не меняется. Единственное различие, которое я вижу, это центр-у.

Есть ли что-то в Calabash Api для этого?

Благодаря

ответ

3

Глядя на документацию для коммутатора виджета на разработчиков Android это метод «IsChecked». http://developer.android.com/reference/android/widget/Switch.html

Таким образом, вы можете найти это значение в Calabash, вызывая

query("Switch id:'quadrant_buzz'", :isChecked)

Вы могли бы также использоваться только: проверено в Calabash.

+1

Я пробовал использовать: проверил раньше, но я дам этот снимок. Я тоже копаюсь в этих андроидных документах, я не знал, что могу их использовать! Спасибо Тобиасу! –

+0

Ваш пример работал отлично! Спасибо Тобиасу! –

0

The isChecked работает.

 
    irb(main):001:0> query("android.widget.Switch",:isChecked) 
    [ 
     [0] true 
    ]