UiDevice的UiObject的講解

UiObject :整個UI裏面的某個元素或控件。可以通過UiObject對象來對控件模擬用戶的操作。UiObject的構造函數裏是傳入一個UiSelector對象。所以我們要通過UiSelector來查找我們需要的元素或控件


uiobject : ui控件
uiselector:是一個過濾的條件的操作


操作包括:文本德爾輸入和清楚、手勢操作、點擊與長按、獲取子類、拖動與滑動、屬性的獲取以及對象是否存在。


一個UIObject對象視圖的表示,它不以任何一個方式直接綁定到一個視圖作爲對象的引用。一個uiobject包含的信息幫助它在基於它的構造函數指定的uiselector性能運行時找到一個匹配的觀點。一旦你創建了一個uiobject實例,可以使用不同的視圖選擇匹配準則。


Constants
int FINGER_TOUCH_HALF_WIDTH
int SWIPE_MARGIN_LIMIT
long WAIT_FOR_EVENT_TMEOUTThis constant is deprecated. use setScrollAcknowledgmentTimeout(long)
long WAIT_FOR_SELECTOR_POLL
long WAIT_FOR_SELECTOR_TIMEOUTThis constant is deprecated. use setWaitForSelectorTimeout(long)
long WAIT_FOR_WINDOW_TMEOUT

Public Constructors
UiObject(UiSelector selector) 過時,
替代函數爲:findObject(UiSelector)

void clearTextField() 清楚已經存在扥文本內容在一個可編輯的區域
boolean click() 點擊可視化的區域的的UI元素的區域代表通過這個uiobject
boolean clickAndWaitForNewWindow(long timeout)
在這uiobject爲代表的UI元素的可見範圍的中心點擊並等待窗口轉換。
boolean clickAndWaitForNewWindow()
等待窗口轉換,通常會採取比通常的默認超時時間。
boolean clickBottomRight()  點擊用戶界面元素的右下角
boolean clickTopLeft()   點擊用戶界面元素的左上角
boolean dragTo(UiObject destObj, int steps) 拖動這個對象到一個目標對象
boolean dragTo(int destX, int destY, int steps)
拖動一個對象到到一個指定的座標位置。
boolean exists()  檢查界面是否存在
Rect getBounds() 返回view的bounds的屬性
UiObject getChild(UiSelector selector)
創建一個孩子的觀點,是目前uiobject下一個新的uiobject。
int getChildCount()計算出孩子但當前界面的孩子數目
String getClassName() 檢索的UI元素的className屬性。
String getContentDescription() 讀content_desc UI元素的屬性
UiObject getFromParent(UiSelector selector)
創建視圖的兄弟姐妹或兄弟姐妹的孩子一個新的uiobject來看,相對於目前的uiobject。
String getPackageName()
讀取視圖的包屬性
final UiSelector getSelector()
調試助手。
String getText()
讀取用戶界面元素的文本屬性
Rect getVisibleBounds()
返回視圖的可視範圍。
boolean isCheckable()
檢查用戶界面元素的使用性能是目前真正。
boolean isChecked()
檢查用戶界面元素的檢查屬性是否正確
boolean isClickable()
檢查用戶界面元素的可點擊的物業目前是真實的。
boolean isEnabled()
檢查用戶界面元素的啓用屬性是否爲當前真實。
boolean isFocusable()
檢查UI元素的聚焦性能是目前真正。
boolean isFocused()
檢查當前UI元素是否爲真
boolean isLongClickable()
檢查視圖的長按屬性
boolean isScrollable()
檢查當前的屬性是否可以移動
boolean isSelected()
檢查UI元素的選擇屬性當前是否爲真。
boolean longClick()
長點擊UI控件元素
boolean longClickBottomRight()
長點擊用戶的下部和右上角的用戶界面元素。
boolean longClickTopLeft() 
長點擊用戶的頂部和左上角的用戶界面元素。
boolean performMultiPointerGesture(PointerCoords... touches)
多點觸摸手勢
boolean performTwoPointerGesture(Point startPoint1, Point startPoint2, Point endPoint1, Point endPoint2, int steps)
生成兩點手勢任意一個點開始到一個點結束。
boolean pinchIn(int percent, int steps)
執行一二個指針的手勢,每個指針移動斜向其他,從邊緣到中心的這uiobject
boolean pinchOut(int percent, int steps)
相反
boolean setText(String text)
設置文本到可編輯的區域(*然後結算該區域的內容)。
boolean swipeDown(int steps)
執行向下滑的操作
boolean swipeLeft(int steps)
執行向左滑的操作
boolean swipeRight(int steps)
執行向右滑的操作
boolean swipeUp(int steps)
執行向上滑的操作
boolean waitForExists(long timeout)
等待一個視圖的指定時間長度,以便成爲可測的。
boolean waitUntilGone(long timeout)
等待一個視圖的指定時間長度,以便成爲不可測的。
Protected Methods 保護方法
protected AccessibilityNodeInfo findAccessibilityNodeInfo (long timeout)  
timeout 是秒爲單位

總結:UiObject就是ui控件的對象,可以用於操作。
















發佈了144 篇原創文章 · 獲贊 11 · 訪問量 24萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章