我有一个异构回收器视图,我正在尝试将其滚动到位置 30 的项目。我的测试通过,但我看不到屏幕实际滚动。
onView(withId(R.id.content_view))
.perform(RecyclerViewActions.scrollToPosition(30));
这就是我正在做的滚动。
使用 scrollToHolder()
:
onView(withId(R.id.recyclerViewId))
.perform(scrollToHolder(viewHolderMatcher(some_parameter_to_match)));
其中viewHolderMatcher(some_parameter_to_match)
返回Matcher<RecyclerView.ViewHolder>
即持有人/物品在回收器视图中的位置。
或仅按职位:
onView(withId(rvLayoutId))
.perform(actionOnItemAtPosition(256, scrollTo()));
最后一个来自这里。
你试过 ViewActions 向下滑动吗?
告诉它关于ViewHolder。
onView(withId(R.id.recyclerview)).perform(
RecyclerViewActions.scrollToPosition<RecyclerView.ViewHolder>(
YOUR_POSITION
)
)