UiObejct.getFromParent()
来源:互联网 发布:心知早早孕试纸准确吗 编辑:程序博客网 时间:2024/05/21 21:50
1. UiObejct.getFromParent()的用法:从这个名字就知道,就是从当前对象的父对象中查找想要的子对象,该子对象和当前对象应该是同一层级。
如上图所示:Max inactivity before lock是已知条件,4 minutes是我想动态获取的内容。那应该怎么做呢?
先看看结构:TableLayout(curent index is 2) - TableRow(has several indexes) - TextView(has 2 indexes)。
- 先获取TableLayout index为2的那个对象
- 遍历TableLayout里面的TableRow,获取TableRow(i)里头的TextView(0)的text
- 当TextView(1)的text内容为“Max inactivity before lock”,则可以确定我们所要的那个TableRow了。(其实就是找对应的index)
- 然后我们就使用当前对象的getFromParent()方法去查找TextView(1)的text,这样就可以取到我们想要的值了。
//下面2步是获取TableLayout下面TableRow的数量UiObject allPasswordPolicies = new UiObject(new UiSelector().className("android.widget.TableLayout").index(2));int pwdcount = allPasswordPolicies.getChildCount();//遍历每一个TableRowfor(int i = 0; i < pwdcount; i++) { UiObject passcodePolicyName = allPasswordPolicies.getChild(new UiSelector().className("android.widget.TableRow").index(i).childSelector(new UiSelector().className("android.widget.TextView").index(0))); //查找TableRow中index为0的TextView的值等于"Max inactivity before lock"的对象 if(passcodePolicyName.getText().contains("Max inactivity before lock")) {//使用getFromParent()和getText()方法获取当前对象同级的TextView,index为1的那个对象的text值。passcodePolicyName.getFromParent等同于TableRow(1)对象 String actualValue = passcodePolicyName.getFromParent(new UiSelector().className("android.widget.TextView").index(1)).getText(); if(actualValue.equals(expectedValue)) { System.out.println(policyName + " check: Pass."); } else { System.out.println(policyName + " check: Failed."); } } }
0 0
- UiObejct.getFromParent()
- 六、UiObejct API 详细介绍
- 【iOS开发-9】UIImage和UIImageView属性介绍,实现图片动画,实现开始/停止按钮效果
- spring MVC 导出excel
- ANTLR4权威指南 - 第7章 通过特定应用程序代码解耦语法
- 用户空间栈 & 系统空间栈
- _HEAP_LOOKASIDE
- UiObejct.getFromParent()
- 抽象工厂模式
- 返回时软键盘隐藏时候出现黑影
- sql查询语句优化
- 工厂模式--我的理解
- JAVA中接口和抽象类的区别
- 工厂方法模式
- 开始写博客随笔
- Mac 配置 PhoneGap 3.x 开发环境