android - AppBarLayout 的嵌套 RecyclerView 问题

标签 android android-recyclerview android-design-library android-appbarlayout

我的 Activity 包含一个由设计库 23.0.1 提供的 AppBarLayout,当我向上滚动时它会隐藏。我有一个 RecyclerView,每个子项目也包含一个 RecyclerView,基本上是一个嵌套的 RecyclerView。

我的问题是,当我触摸任何内部 RecyclerView 的子级并向上滚动时,AppBar 不会隐藏。但是,如果我将手指放在其他地方(而不是内部 RecyclerView 上)并滚动,应用栏就会向上滚动。为什么会这样?我什至尝试为内部回收器 View 添加应用栏行为,但应用栏只会在我触摸其他地方并滚动时向上滚动。

注意:内部的 recyclerview 有一组固定的项目,这些项目将始终可见,基本上,在 recyclerview 内没有滚动。

有一个similar question一个提供的解决方案是拦截内部回收 View 的触摸并将其传递给父回收 View 。但这会禁用内部回收器 View 中子项的点击事件,我不希望这样。

最佳答案

对于内部回收器 View ,您需要将嵌套滚动标志设置为 false。

mSomeInnerRecyclerView.setNestedScrollingEnabled(false);

关于android - AppBarLayout 的嵌套 RecyclerView 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33050907/

相关文章:

android - Roboblender 使用带有多个模块的注释数据库

java - 切换到 Activity 时出现黑屏

android - CSS 媒体查询不反射(reflect)设备屏幕尺寸

android - 如何将返回堆栈添加到我的选项卡布局?

android - 如果我们可以直接从 MVVM 中的 Fragment 访问 Repository,为什么要使用 ViewModel

android - 如何为 NavigationView 中的项目设置自定义字体?

Android PagerTabStrip - 删除间距

java - PostValue 可以工作,但 SetValue 不能 MutableLiveData - AndroidX

android - 使用 CollapsingToolbarLayout 滚动后不会调用 OnClick 事件。

切换 fragment 后,Android TabLayout 不再显示内容