我有问题在旋转滚动起来的Robotium测试用例来选择第一项。 这里是我的代码:
int pos = solo.getCurrentSpinners().get(0).getSelectedItemPosition();
solo.pressSpinnerItem(0, 0 - pos);
pos是1,当我调试,但Robotium仍压在指数1微调,即使我责令其按在-1。 我究竟做错了什么?
感谢马库斯
我有问题在旋转滚动起来的Robotium测试用例来选择第一项。 这里是我的代码:
int pos = solo.getCurrentSpinners().get(0).getSelectedItemPosition();
solo.pressSpinnerItem(0, 0 - pos);
pos是1,当我调试,但Robotium仍压在指数1微调,即使我责令其按在-1。 我究竟做错了什么?
感谢马库斯
似乎他们把这些类出来了。 恰好碰到了这个自己,但发现了一种正确和一般做到这一点。
// 0 is the first spinner in the layout
View view1 = solo.getView(Spinner.class, 0);
solo.clickOnView(view1);
solo.scrollToTop(); // I put this in here so that it always keeps the list at start
// select the 10th item in the spinner
solo.clickOnView(solo.getView(TextView.class, 10));
该API在这里使用与Robotium是相当片状,所以我决定走直接API路线:
instrumentation.runOnMainSync(new Runnable() {
@Override
public void run() {
Spinner spinner = (Spinner) solo.getView(resourceId);
spinner.setSelection(position, true);
}
});
这不会告诉你的微调的弹出,但它会选择所需项目。
你能刚拿到的观点,并调用执行一下就可以了?
solo.getCurrentSpinners().get(0).performClick()