appium中引导图等-滑动.通过坐标定位

给大家分享一下如何进行坐标定位,从而实现滑动的例子:

首先我们的应从场景有很多,比如app首页的引导图,例如我们公司的信息流的下拉刷新上拉加载.等等,都会用到页面的滑动.

首先先了解一下什么是坐标滑动:

我们app的坐标是在左上角进行的原点定位.

通过针对坐标的定位以及java中的swipe 便可以进行滑动的操作:

首先看第一步代码:

通过坐标来进行引导图进行向左滑动. swipe函数:

driver.swipe(900,800,100,800,1000);

900和800 是滑动的起始坐标位置,

100和800 是结束时候的坐标位置.

1000指的是 滑动的间隔时间,

这种如果是同一款手机的分辨率是没有问题的,但是针对不同的手机的分辨率.我们怎么才能让他自动识别呢?

下面我们来进行定位写活:

int width = driver.manager.windows.getsize().width; 这个是获取到的屏幕宽度.

int height = driver.manager.windows.getsize().height; 这个是获取到的屏幕高度.

同过上述的两个代码,就能实时的获取到我们当前屏幕的宽和高.

在通过获取到的这两个变量,我们进行活动式的加减乘除,就可以进行页面的滑动:

下面是一个小demo  辅助理解:

int width = driver.manager.windows.getsize().width;

int height = driver.manager.windows.getsize().height;

driver.swipe(width*9/10,height/2,width/20,height/2,1000);

到这一步我们可以说是已经实现了滑动.

下面再拓展一下,我们知道java最大的特点就是面向对象, 面向对象第一步就是封装.

我们可以将这个方法封装成对象,进行调用.

还可以也就是接下来说的 二次封装.

封装成方法后 传入一个方向的字符串.  然后用if语句进行判断.

下面这个是个demo也是通用的二次封装滑动,直接传参进方向即可进行运行代码:

public static void page_huadong(String direction){

            int width = driver.manager.windows.getsize().width;

            int height = driver.manager.windows.getsize().height;

            if(direction.equals("左滑")){

              driver.swipe(width*9/10,height/2,width/20,height/2,1000);

}

            if(direction.equals("右滑")){

              driver.swipe(width/20,height/2,width*9/10,height/2,1000);

}

            if(direction.equals("上滑")){

              driver.swipe(width/2,height*9/10,width/2,height/20,1000);

}

             if(direction.equals("下滑")){

              driver.swipe(width/2,height/20,width/2,height*9/10,1000);

}

}

到此  滑动就结束了,也进行了简单的二次封装,如果有不理解或者更好见解的地方欢迎各位大神评论区留言.

滑动并不是只有一个方法.欢迎大家留言讨论.

                                                                                                                                -小饼呀

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值