2013-12-24 15 views
7

Ich versuche, einen UIAutomator-Testfall mit einer allgemeinen Methode zu implementieren, um einen Klick auf ein ListView-Element (unabhängig von der Art der Viewgruppe mit dem Listeneintrag) durchzuführen.UIAutomator Klicken Sie auf Listenansicht basierend auf Index

Zur Zeit habe ich folgenden Code, aber es bleibt beim Klicken auf den ersten Punkt.

public void clickListViewItem(int index) throws UiObjectNotFoundException { 
    UiObject listview = new UiObject(new UiSelector().className("android.widget.ListView")); 
    if(index <= listview.getChildCount()){ 
     listview.getChild(new UiSelector().index(index)).click(); 
    }else{ 
     throw new UIObjectNotFoundException("Index is greater than listSize"); 
    } 
} 
+0

sind u es in einer Schleife setzen, ich denke, dass das Problem ist. –

Antwort

9

Ich habe es mit folgendem Code zu arbeiten, ist es auf dem klickbaren Attribute eines UISelector basiert:

listview.getChild(new UiSelector().clickable(true).index(index)).click(); 
+0

So rufen Sie das Listview-Objekt selbst ab? – Behnam

+0

Funktioniert nicht mehr mit neueren Version von UiAutomator – Tobrun

Verwandte Themen