今天遇到一种情况,所有控件都只显式同一个class,text都为空,不知道具体位置,所以通过坐标来点击控件


我试了一下使用uiautomatorviewer提供的坐标来点击,执行之后和预期结果不符,所以有的时候,我们需要打开(开发者模式-指针位置-打开)就可以看到当前操作的坐标信息

调用方法:driver.tap()
driver.tap([(999,216)])#绝对坐标
#缺点:只有这个手机可以适用这个坐标其他手机不适用
driver.tap([(999,216)],2)#还可以设置点击次数,我设置的2次
还有一种方法:通过相对坐标点击控件
#这个的好处就是好维护,其他手机也可以适用
w=driver.get_window_size()["width"]#获取当前手机屏幕宽
h=driver.get_window_size()["height"]#获取当前手机屏幕高
x=999/1080#绝对坐标和手机屏幕的宽比例
y=216/2020#绝对坐标和手机屏幕的高比例
driver.tap([(x*w,y*h)])#点击相对坐标
本文探讨了在UI自动化中遇到的问题,如何使用绝对坐标和相对坐标点击控件,以及开发者模式下查看坐标技巧。重点介绍了针对不同手机屏幕的坐标转换方法,旨在解决控件定位和跨设备兼容性问题。
1519

被折叠的 条评论
为什么被折叠?



