UiAutomator笔记之UiScrollable API(六)
来源:互联网 发布:网络专供电器 编辑:程序博客网 时间:2024/05/22 12:10
一、UiScrollable简介
1、UiScrollable是UiCollection的子类。
2、UiScrollable专门处理滚动时间,提供各种滚动方法。
常用功能有:向前滚动、向后滚动、快速滚动、滚动到某个对象、设置滚动方向、设置滚动次数等。
二、API详细介绍
1、快速滚动
(1)相关概念
步长:从一点到另一点使用的时间。步长越短滚动越快,反之步长越长滚动越慢。
扫动次数:触发滚动的次数。
(2)相关API
返回值
API
说明
boolean
flingBackward()
以步长为5快速向后滑动
boolean
flingForward()
以步长为5快速向前滑动
boolean
flingToBeginning(int maxSwipes)
自定义扫动次数以步长为5快速滑动到开启
boolean
flingToEnd(int maxSwipes)
自定义扫动次数以步长为5快速滑动到结束
(3)示例
UiScrollable scroll = new UiScrollable(new UiSelector.className(“android.widget.ListView”));
scroll.flingBackward();
2、获取列表子元素
(1)相关API
返回值
API
UiObject
getChildByDescription(UiSelector childPattern, String text, boolean allowScrollSearch)
是否允许滚动查找获取具备UiSelector条件元素集合后再以文本描述条件查找对象
UiObject
getChildByDescription(UiSelector childPattern, String text)
默认滚动获取具备UiSelector条件的元素集合后再以文本描述条件查找对象
UiObject
getChildByInstance(UiSelector childPattern, int instance)
获取具备UiSelector条件的子集,再从子集中按照实例筛选想要的元素(不滚动)
UiObject
getChildByText(UiSelector childPattern, String text, boolean allowScrollSearch)
是否允许滚动获取具备UiSelector条件的元素集合后再以文本条件查找对象
UiObject
getChildByText(UiSelector childPattern, String text)
默认滚动获取具备UiSelector条件元素集合后再以文本条件的查找对象
如:
UiScrollable scroll = new UiScrollable(new UiSelector.className(“android.widget.ListView”));
UiObject obj = scroll.getChildByText(new UiSelector.className(“android.widget.TextView”,“号码1”,true)); //当不滚动查找,就跟UiCollection效果一样
3、获取与设置最大滚动次数常量值
(1)相关API
返回值
API
说明
int
getMaxSearchSwipes()
获取执行搜索滑动过程中的最大滑动次数,默认常量为30
UiScrollable
setMaxSearchSwipes(int swipes)
设置最大可扫动次数
4、滑动区域校准常量设置与获取
(1)相关概念
校准常量:指的是滑动操作坐标时(起点和终点)的偏移量,即控件上不可滑动的区域占比。
(2)相关API
返回值
API
说明
double
getSwipeDeadZonePercentage()
校准常量默认值为0.1(10%)
UiScrollable
setSwipeDeadZonePercentage(double swipeDeadZonePercentage)
设置控件上不可滑动的区域占比
(3)示例
UiScrollable scroll = new UiScrollable(new UiSelector.className(“android.widget.ListView”));
scroll.setSwipeDeadZonePercentage(0.15); //设置listview校准常量为0.15,即距离listview顶部15%和底部15%的区域不可滑动,只有控件中部70%的区域可滑动。当校准常量设置为0.5时,控件的可滑动区域为0,滑动的动作效果将和单击的效果一样。
5、向前与向后滚动
(1)相关API
返回值
API
说明
boolean
scrollBackward(int steps)
自定义步长向后滑动
boolean
scrollBackward()
以默认步长55向后滑动
boolean
scrollDescriptionIntoView(String text)
滚动到描述所在位置,并且尽量让它居于屏幕中央
boolean
scrollForward()
以默认步长55向前滚动
boolean
scrollForward(int steps)
自定义步长向前滚动。
当步长很短(如1)时,滑动效果同单机;当步长很长时,滑动效果同双击。
6、滚动到某个对象
(1)相关API
返回值
API
说明
boolean
scrollIntoView(UiSelector selector)
滚动到条件元素所在位置,并且尽量让其居于屏幕中央
boolean
scrollIntoView(UiObject obj)
滚动到对象所在位置,并且尽量让其居于屏幕中央
boolean
scrollTextIntoView(String text)
滚动到文本对象所在位置,并且尽量让其居于屏幕中央
boolean
scrollToBeginning(int maxSwipes)
自定义最大滚动次数,滚动到开始位置
boolean
scrollToBeginning(int maxSwipes, int steps)
自定义最大滚动次数与步长,滚动到开始位置
boolean
scrollToEnd(int maxSwipes, int steps)
自定义最大滚动次数与步长,滚动到结束位置
boolean
scrollToEnd(int maxSwipes)
自定义最大滚动次数,滚动到结束位置
(2)示例
UiScrollable scroll = new UiScrollable(new UiSelector.className(“android.widget.ListView”));
UiSelector selector = new UiSelector().text(“号码1”);
scroll.scrollIntoView(selector); //滚动到“号码1”
scroll.scrollToEnd(10, 5); //以步长(速率)5滚动到列表底部,最多滚动10次。
7、设置滚动方向
(1)相关概念
(2)相关API
返回值
API
说明
UiScrollable
setAsHorizontalList()
设置滚动方向设置为水平滚动
UiScrollable
setAsVerticalList()
设置滚动方向设置为纵向滚动
(3)示例
UiScrollable scroll = new UiScrollable(new UiSelector.className(“android.support.v4.view.ViewPager”));
scroll.setAsHorizontalList();
scroll.scrollBackward(); //水平方向往回滚动
scroll.scrollForward(); //水平方向往前滚动
- UiAutomator笔记之UiScrollable API(六)
- UiAutomator(5)--UiScrollable API
- UiAutomator之UiCollection UiScrollable UiWatcher
- UiAutomator之UiCollection UiScrollable UiWatcher
- uiautomator中的UiScrollable学习笔记(5)
- uiautomator中的UiScrollable学习笔记(5)
- UiAutomator笔记之UiDevice API(二)
- UiAutomator笔记之UiSelector API(三)
- UiAutomator笔记之UiObject API(四)
- UiAutomator笔记之UiCollection API(五)
- Android UiAutomator UiScrollable类
- uiautomator:UiScrollable的用法
- 八、UiScrollable API 详细介绍
- UiAutomator(2)--UiDevice API
- UiAutomator(3)--UiObject API
- UiAutomator(4)--UiCollection API
- android自动化测试工具【UiAutomator】——UiScrollable
- uiautomator中UiScrollable下滑自动找到内容点击
- C++拾遗--多线程:多线程的引入
- 理解HTTP协议
- 搜索引擎学习笔记 --- 结构与模块图
- 翻译spring-cloud的一篇文章
- 算法的优化
- UiAutomator笔记之UiScrollable API(六)
- 开博首贴:HelloBolg
- 11月英语--慢慢回温
- php数组常用方法详解
- 1.引言 OpenFlow1.5核心概念翻译与理解-OpenFlow1.5中文版
- 异常与中断处理
- 利用SAS软件制作报表的常用手法
- 深刻理解Python中的元类(metaclass)
- css3学习笔记1