MilgGtery 发表于 2019-3-13 16:45:31

uiautomator中UiScrollable下滑自动找到内容点击

我们操作手机时,要选择那个东西,当前界面没有,就要滑动去找,找到就点击它;

例如:要打开设置中的更多内容,更多这个按钮在下方,打开设置界面是看不到的,需要滑动下找,这就用的了我们的UiScrollable的api;

第一步:先找到可以滑动的界面(uiautomator view工具可以看到Scrollable属性是true代表可以支持滑动,false代表不支持滑动)

第二步:设置最大的扫到次数,不可能无限滑动

第三步:找到你想要的,用UiObject去定位内容,指定的那个内容。

第四步:找到了就操作它即可;
//
Runtime.getRuntime().exec("am start com.android.settings");//打开设置应用
               
//uiautomator查看工具,只有Scrollable显示为true的,都是可以支持滑动的界面
UiScrollable settingMore = new UiScrollable(new UiSelector()
.className("android.widget.ListView"));

settingMore.setMaxSearchSwipes(50);//设置最大可扫动次数

UiObject object = new UiObject(new UiSelector().text("更多"));//找到“更多”这个选项

settingMore.scrollIntoView(object);//然后点击 它(更多)

object.click();//其他的还有文件夹,比如:打开文件夹,然后想打开某个文件夹,这也需要滑动查找,当前界面没有就滑动下去,直到找到为止。大家举一反三吧!举例:打开手机目录下的GotaTestPresure文件夹(即sdcard/GotaTestPresure),//文件夹内滑动找到GotaTestPresure文件夹,找出Scrollable为true的
UiScrollable bigKuang = new UiScrollable(new UiSelector()
.resourceId("zte.com.cn.filer:id/pager"));//文件夹大框,判断看要不要下滑查找

bigKuang.setMaxSearchSwipes(50);//设置最大可扫动次数
UiObject clickGoTaFile = new UiObject(new UiSelector().text("GotaTestPresure"));//GotaTestPresure文件夹
bigKuang.scrollIntoView(clickGoTaFile);//滑动并找到GotaTestPresure文件夹,若在当前界面就不滑动了
clickGoTaFile.click();//点击打开GotaTestPresure文件夹



页: [1]
查看完整版本: uiautomator中UiScrollable下滑自动找到内容点击