能够滚动浏览无休止的循环回收器视图,但无法单击特定列表项
able to scroll through an endless circular recycler view but not able to click on the specific list item
我正在开发一个应用程序,开发人员在其中创建了一个无尽的循环回收器视图。在使用该应用程序时,您可以无休止地滚动浏览回收站视图。为此,您必须单击回收器视图上的任何项目并滚动。一旦在屏幕上看到想要的项目,就必须离开手指,一旦离开手指,屏幕背景就会改变颜色,并在屏幕上显示相应的按钮。现在,这就是我面临的问题。
我已经使用 Espresso 和 Barista 库滚动浏览列表,并且我成功滚动了。我使用以下代码滚动:
咖啡师图书馆:
scrollListToPosition(R.id.recyclerview, 5);
clickListItem(R.id.recyclerview, 6);
此外,Espresso 库:
onView(withId(R.id.content_view)).perform(RecyclerViewActions.scrollToPosition(5));
使用上述两种方法,我都可以滚动列表,正确的项目出现在屏幕上,但背景颜色没有改变,相应的按钮也没有显示在屏幕上。 (如果我将此行为与实际设备进行比较,当我用手指向上滑动但不要将手指留在屏幕上时会发生这种情况。一旦我离开手指,颜色就会改变并出现一个按钮)所以,在简而言之,我可以滚动但无法模仿将手指离开屏幕的行为。
使用 Espresso,您可以使用 RecyclerViewActions.actionOnItemAtPosition
并执行长按以达到离开手指的效果:
onView(withId(R.id.content_view)).perform(RecyclerViewActions.actionOnItemAtPosition(5, longClick()));
我找到了上述问题的答案。单击和滚动必须背靠背执行,就像拖放一样:
onView(withId(R.id.recycler_view)).perform(actionOnItemAtPosition(0, longClick()));
onView(withId(R.id.recycler_view)).perform(actionOnItemAtPosition(1, swipeUp()));
使用这段代码,我长按第 0 个元素,然后向上滑动到第 1 个元素。
我正在开发一个应用程序,开发人员在其中创建了一个无尽的循环回收器视图。在使用该应用程序时,您可以无休止地滚动浏览回收站视图。为此,您必须单击回收器视图上的任何项目并滚动。一旦在屏幕上看到想要的项目,就必须离开手指,一旦离开手指,屏幕背景就会改变颜色,并在屏幕上显示相应的按钮。现在,这就是我面临的问题。
我已经使用 Espresso 和 Barista 库滚动浏览列表,并且我成功滚动了。我使用以下代码滚动:
咖啡师图书馆:
scrollListToPosition(R.id.recyclerview, 5);
clickListItem(R.id.recyclerview, 6);
此外,Espresso 库:
onView(withId(R.id.content_view)).perform(RecyclerViewActions.scrollToPosition(5));
使用上述两种方法,我都可以滚动列表,正确的项目出现在屏幕上,但背景颜色没有改变,相应的按钮也没有显示在屏幕上。 (如果我将此行为与实际设备进行比较,当我用手指向上滑动但不要将手指留在屏幕上时会发生这种情况。一旦我离开手指,颜色就会改变并出现一个按钮)所以,在简而言之,我可以滚动但无法模仿将手指离开屏幕的行为。
使用 Espresso,您可以使用 RecyclerViewActions.actionOnItemAtPosition
并执行长按以达到离开手指的效果:
onView(withId(R.id.content_view)).perform(RecyclerViewActions.actionOnItemAtPosition(5, longClick()));
我找到了上述问题的答案。单击和滚动必须背靠背执行,就像拖放一样:
onView(withId(R.id.recycler_view)).perform(actionOnItemAtPosition(0, longClick()));
onView(withId(R.id.recycler_view)).perform(actionOnItemAtPosition(1, swipeUp()));
使用这段代码,我长按第 0 个元素,然后向上滑动到第 1 个元素。