Android自动化实现点击自定义ListAdapter类控件

来源:互联网 发布:绿尾真假辨别技巧知乎 编辑:程序博客网 时间:2024/06/07 19:08

robotium的solo类提供了solo.clickInList方法去点击listview中的某一行,但却没有方法去点击AdapterView类控件,那么怎么办呢?

方法其实非常简单,就是调用view的setSelection和requestFocus方法就可以了,那么这里以Instrumentation框架为例

/****传入一个AdapterView对象,我这里传入了子类**以及列表号**/class ClickAdapter implements Runnable {    HorizontalListView v;    int ind;    public ClickAdapter(HorizontalListView v,int ind){        this.v = v;        this.ind = ind;    }    @Override    public void run() {        v.setSelection(ind);        v.requestFocus();        v.performClick();    }}

那么上面定义的是一个Runnable接口实现类,用法下面这样:

getInstrumentation().runOnMainSync(new ClickAdapter(mHorizontalListView,0));

得到Instrumentation对象,调用runOnMainSync扔到主线程去执行,传入我定义的runnable对象,0表示我要点击的自定义Adapter里面的序号。

0 0
原创粉丝点击