在我的应用程序中,当数据来自服务器时,我已经多次动态地扩展视图。例如,我linearLayout
多次充气。现在我正在尝试使用robotium 测试对这些动态视图的点击。问题是动态添加的布局具有相同的 id,并且会被多次添加。如何单击每个动态膨胀的线性布局。
问问题
1981 次
3 回答
1
这是一个静态函数,可以满足您的需求(我认为,我当前的机器上没有 android sdk 或任何东西,因此无法测试)。我自己不会将它用作静态函数,我会将它放在有意义的地方,但您可以随心所欲地使用它!
public static List<View> getViewsById(Solo solo, int id) {
List<View> allViews = getViews();
List<View> matchedViews = new ArrayList<View>();
for(View view : allViews){
if(view!=null && view.getId() == id){
matchedViews.add(view);
}
}
return matchedViews;
}
于 2013-03-12T18:14:31.280 回答
0
用于solo.getView(view.class,index).performClick();
获取特定索引中的视图并单击它。
于 2013-03-12T15:47:01.757 回答
0
它可以通过几种方式来完成。一个简单的解决方案是,当您膨胀视图时,应用一个点击监听器。就像您正在使用某个循环一样,在每次迭代中,在循环中添加点击侦听器。
于 2013-03-12T16:04:00.800 回答