2013-08-06 186 views
1

我正在嘗試使用Android uiautomator自動執行聯繫人選擇過程。我的用戶界面如下圖所示。我使用下面的代碼來檢查每個聯繫人Android uiautomator - 一次選擇多個項目

for (String contactName : list) { 
    UiScrollable scrollable = new UiScrollable(new UiSelector().className(
     android.widget.ListView.class).scrollable(true)) 
     .setAsVerticalList(); 

    try { 
    UiObject obj = scrollable.getChildByText(LIST_VIEW_ITEM, contactName, true); 
    obj.click(); 

    } catch (Exception e) { } 
    finally { 
    scrollable.scrollToBeginning(scrollable.getMaxSearchSwipes()); 
    }    
} 

此代碼效率低下。需要很長時間才能找到每個聯繫人並進行檢查。有沒有去循環每一行並檢查?

謝謝。

this

回答

0

試試下面的代碼

for(int i=0;i<n;i++)new UiObject(new UiSelector().className("android.widget.CheckBox").instance(i)).click(); 
0

我不能完全肯定,但我認爲它應該工作。

嘗試製作所有複選框的UiCollection(稱爲複選框),然後checkboxes.click()。

UiCollection從UiObject繼承此方法,所以我猜想它會在每個對象中單擊,但我沒有嘗試過。如果它有效,我會編輯我的答案以消除疑問:)