我的 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/