java - 如何仅使用 Horizontal RecyclerView 的滚动来滚动 ViewPager
问题描述
我正在制作一个类似于 MMT 应用程序主页的视图,如附图所示,其中 View Pager 仅通过将 Recycler View 向下滚动到 View Pager 来滚动。
我尝试了一些代码并在一定程度上实现了它,但我遇到了一些问题。
当我滚动它时,视图寻呼机正在使用 Recycler 视图滚动,但 ViewPager 滚动更多并且下一个图像被剪裁。
如果我手动滚动 View Pager 也会单独滚动,但我希望它仅在 Recycler View 滚动时滚动。
这是我所做的以及我面临的问题的屏幕截图。
在屏幕截图中,您可以看到我在 Recycler View 的滚动上的 View Pager 中获得了一半可见的下一张图像。
这是我使用 Recycler View scroll 滚动视图寻呼机的代码
enter code here
recyclerView.addOnScrollListener(new RecyclerView.OnScrollListener() {
@Override
public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
}
@Override
public void onScrolled(RecyclerView recyclerView, int dx, int dy) {
super.onScrolled(recyclerView, dx, dy);
viewPager.scrollBy(dx, dy);
}
这是我将适配器设置为 View Pager 和 Recycler View 的代码
enter code here
StoryViewPagerAdapter storyViewPagerAdapter = new
StoryViewPagerAdapter(this, viewPagerImagesList);
viewPager.setAdapter(storyViewPagerAdapter);
recyclerView.setAdapter(storiesAdapter);
viewPager.setOffscreenPageLimit(viewPagerImagesList.size());
谁能建议告诉我我在这里忘记考虑什么?
提前致谢。
解决方案
推荐阅读
- html - 旋转文本的 CSS 定位和对齐
- java - 如何使用 XMLBeam 将元素插入现有文档?
- python - Python HTTP 服务器使用不同类型的处理程序提供两条路径
- selenium - Selenium/WebDriver switch_to parent_frame/default_content 返回无
- java - 如何在 Java(JFrame) 中绘制一个简单的类对象?
- javascript - docker 中的错误(找不到我导出的模块),运行 npm start 时没有问题
- flutter-layout - 如何使用 Flutter 扩展小部件填满整个屏幕?
- spring - jpa 与 https 请求多线程 spring
- java - 如果用户输入不是 y 或 n,如何使 y/n 用户输入循环?
- java - Spring boot ,在双方的Json响应中包含一对多的关系