Appium---android.view.View下拉列表定位

问题:下拉列表是一个view,不能定位列表元素,但自动化需要分别设置高、中、低

 

Appium---android.view.View下拉列表定位

 解决:

1)d=driver.find_element_by_id("com.xxx.xxx.agent:id/level_1") 

通过resoure-id知道view

2)d.size

获取到view的宽和高:{'width': 990, 'height': 399}

获取到width和height

    w=d.size['width']
    h=d.size['height']

3)d.location

获取到view的起始坐标

{'y': 1521.0, 'x': 45.0}

y=d.location['y']

Appium---android.view.View下拉列表定位

4) 滑动API:Swipe(int start x,int start y,int end x,int y,duration) 

解释: 
int start x-开始滑动的x坐标;
int start y -开始滑动的y坐标 ;
int end x -结束点x坐标;
int end y -结束点y坐标; 
duration 滑动时间(默认5毫秒)。

计算出sx,sy,ex,ey

    sx=w/2*1
    sy=h/5*4+y

    ex=w/2*1
    ey=h/5*3+y

5)使用以下方法实现了滑动

for i in range(3):
        driver.swipe(sx,sy, ex,ey,200)