android UiAutomator瞭解源碼解決控件bonds[0,0]無法點擊

本人在學習UiAutomator的時候,偶然碰到一些控件的bounds竟然是[0,0][0,0]的情況,十分費解,能找到就是無法點擊,或者層級太複雜,比如說京東app領取優惠券的頁面,我想根據優惠券內容選擇點擊有方的“立即領取”按鈕等等。這裏分享一下自己寫的方法,說一下是用獲取上一次的控件的尺寸來計算座標的。

//點擊控件右半邊
public void getUiObjectByResoureIdAndclickRightHalf(String id) throws UiObjectNotFoundException {
//獲取控件大小
Rect sss = getUiObjextByResourceId(id).getBounds();
//計算中心偏移量
clickPiont(sss.centerX()+sss.width()/4, sss.centerY());
}
//點擊控件左半邊
public void getUiObjectByResoureIdAndclickLeftHalf(String id) throws UiObjectNotFoundException {
//獲取控件大小
Rect sss = getUiObjextByResourceId(id).getBounds();
//計算中心偏移量
clickPiont(sss.centerX()-sss.width()/4, sss.centerY());
}


從這件事情來看,源碼還是很有必要看一看的。有需要的朋友可以留下你的郵箱。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章