android - ViewPager2 内的 ViewPager2(使用 FragmentStateAdapter)。如何使嵌套滚动工作
问题描述
我需要两个水平 ViewPager2 两个允许嵌套滚动。
我搜索了很多,还找到了 ViewPager2 的官方文档以及嵌套滚动的工作原理。问题是,该解决方案涉及可滚动元素是唯一这样的子元素
<androidx.viewpager2.integration.testapp.NestedScrollableHost
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginTop="8dp">
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/first_rv"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:background="#FFFFFF" />
</androidx.viewpager2.integration.testapp.NestedScrollableHost>
我的问题是我有一个带有 ViewPager2 的顶级 TabLayout 和一个带有 ViewPager2 的嵌套级选项卡布局。但对于 TabLayout,ViewPager2 必须是直接子级。所以上述解决方案不适用于嵌套的 ViewPager2。
对于顶层和嵌套布局,我的布局看起来像这样。
<com.google.android.material.tabs.TabLayout
android:id="@+id/tab_layout"
style="@style/App.TabLayout.Module"
android:layout_width="match_parent"
android:layout_height="40dp"
/>
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/view_pager"
android:layout_width="match_parent"
android:layout_height="0dp"
android:layout_weight="1" />
有人知道如何启用嵌套 ViewPager2 的滚动吗?如果我禁用顶级视图寻呼机的滚动,我只能滚动。我还在 medium.com 上找到了一篇文章,它如何与内部的 RecyclerView 一起工作,但由于我无法扩展 ViewPager2,所以这个解决方案也不起作用
解决方案
推荐阅读
- android - 如何在android中获取具有特殊字符的文件的MimeType
- bokeh - 如何在开发/调试模式下以编程方式启动 Bokeh 服务器
- python - 你知道如何在 Ubuntu 中安装 mysqlclient
- javascript - React 中的 chartjs-plugin-datasource 实现 (react2chartjs)
- java - Spring Boot Oauth2 授权服务器不接受有效令牌
- sql - 在雅典娜中将字符串拆分为特定最大长度的不同列
- sql - Presto如何找到给定周的开始日期
- amazon-web-services - 如何在安全组中添加 source_security_group_id?
- javascript - 关于 ReactJS 中的 LifeCycles / 代码片段中的问题
- java - openssl der 文件导入到 java 密钥库