robotium 滾屏操作超過一屏的listview處理
/**
* 還有漏洞,需要補充
* 滾動超過一屏的listview item子項,並點擊它
*
* param index:在listview中的總的索引
* param linesNum: 一屏內listview Item的行數,比如可以指定多少行,根據不同的分辨率指定不同的行數
* param vIndex: 一屏內listview Item有效的行數索引
* param screenIndex: listview 指定行數的屏個數的索引
* param screenCount: listview 指定行數的總屏數
*
* author:andrew
* date: 2013.05.21
* email: 850811845@qq。com
* */
public static void scrollOutsideScreenListItem(Solo solo,int index, int linesNum,
int vIndex, int screenIndex, int screenCount){
if(vIndex < (linesNum+1)){
solo.clickInList(vIndex);
solo.sleep(5000);
vIndex ++;
solo.goBack();
solo.sleep(3000);
if(vIndex == linesNum){
DisplayMetrics outMetrics = new DisplayMetrics();
Activity act = solo.getCurrentActivity();
act.getWindowManager().getDefaultDisplay().getMetrics(outMetrics);
float formX = outMetrics.widthPixels/4;
float formY = outMetrics.heightPixels/4;
if(formX < 30){
formX = 30;
}
if(formY (linesNum-1)){
int temp = (index%linesNum);
solo.scrollDownList(temp);
solo.sleep(3000);
if(screenIndex < screenCount){
screenIndex++;
}
vIndex = 0;
}
}
}