Android 自動化測試經(jīng)驗(yàn)分享 深入U(xiǎn)iScrollable
UiScrollable is a UiCollection and provides support for searching for items in a scrollable user interface (UI) elements. This class can be used with horizontally or vertically scrollable controls.
UiScrollable是一個(gè)UiCollection(這東西還沒搞懂),我們可以使用它,在可滑動的頁面(水平滑動或上下滑動都可以)上查找我們想要的控件(item)。
例1:下面的這個(gè)scrollClickObject方法就是使用UiScrollable,來自動選擇我們想要點(diǎn)擊的那個(gè)控件。
public void scrollClickObject(String targetClassName,String targetName) throws UiObjectNotFoundException {
UiScrollable collectionObject = new UiScrollable(new UiSelector().scrollable(true));
if(collectionObject.exists()) {
UiObject scrollableObject = collectionObject.getChildByText(new UiSelector().className(targetClassName), targetName);
scrollableObject.clickAndWaitForNewWindow();
} else {
UiObject targetObject = new UiObject(new UiSelector().className(targetClassName).text(targetName));
targetObject.clickAndWaitForNewWindow();
}
}
首先定義一個(gè)UiScrollable對象,識別這個(gè)對象的唯一條件就是,屏幕上有可滑動的控件。(這里有一個(gè)問題,就是如果屏幕上同時(shí)存在2個(gè)可滑動的控件,就會報(bào)錯(cuò)了)
然后我們判斷這個(gè)可滑動對象是否存在
•存在,則使用getChildByText方法,獲取我們想要點(diǎn)擊的那個(gè)控件,然后點(diǎn)擊它
•不存在,則說明頁面不可滑動,也就是所有控件均已顯示在界面上。那我們就可以直接使用UiObject獲取控件并操作它。
相關(guān)文章
Android編程實(shí)現(xiàn)音量按鈕添加監(jiān)聽事件的方法
這篇文章主要介紹了Android編程實(shí)現(xiàn)音量按鈕添加監(jiān)聽事件的方法,結(jié)合實(shí)例形式分析了Android事件監(jiān)聽實(shí)現(xiàn)音量控制的相關(guān)操作技巧,需要的朋友可以參考下2017-06-06Android Activity中onStart()和onResume()的區(qū)別分析
這篇文章主要介紹了Android Activity中onStart()和onResume()的區(qū)別,結(jié)合Activity的四種狀態(tài)簡單分析了Android Activity中onStart()和onResume()方法的作用,并補(bǔ)充說明了Activity中六個(gè)常用函數(shù),需要的朋友可以參考下2016-01-01Android 處理 View 重復(fù)點(diǎn)擊的多種方法
這篇文章主要介紹了Android 處理 View 重復(fù)點(diǎn)擊的多種方法,幫助大家更好的理解和學(xué)習(xí)使用Android,感興趣的朋友可以了解下2021-03-03關(guān)于Android bitmap你不知道的一些事
這篇文章主要為大家詳細(xì)介紹了關(guān)于Android bitmap你不知道的一些事,使用bitmap需要注意的一些細(xì)節(jié),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-11-11android studio 一直卡在Gradle:Build Running的幾種解決辦法
這篇文章主要介紹了android studio 一直卡在Gradle:Build Running的解決辦法,非常具有實(shí)用價(jià)值,需要的朋友可以參考下2017-10-10Android 線程優(yōu)化知識點(diǎn)學(xué)習(xí)
這篇文章主要為大家介紹了Android線程優(yōu)化知識點(diǎn)學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-08-08Android開發(fā)Input系統(tǒng)觸摸事件分發(fā)
這篇文章主要為大家介紹了Android開發(fā)Input系統(tǒng)觸摸事件分發(fā)示例解析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-03-03