android - 滚动时单击不在 CoordinatorLayout 中的 RecyclerView 上工作

标签 android android-recyclerview scroll android-collapsingtoolbarlayout coordinator-layout

我正面临着一个奇怪的行为,将 RecyclerView 作为 CoordinatorLayout 的第二个 child ,就在 AppBarLayout 之后(如很多示例中所述)。

我的问题是当我滚动回收站 View 并想单击特定项目时。有时我需要单击 2 次才能选择该项目,它似乎与 throw 行为有关。例如,如果我滚动到回收器 View 的底部,那么如果我将手指从屏幕底部弹到顶部(为了查看更多数据,但在我的情况下,我看不到更多数据,因为我我已经到了底部)然后快速单击一个项目,似乎停止了甩动,第二次单击实际上选择了该项目...
当使用没有 CoordinatorLayout 的简单回收器 View 时,这种行为显然不会发生。

我的 recyclerview 只是持有一个简单的字符串列表,并使用以下布局行为:@string/appbar_scrolling_view_behavior

你知道为什么吗?

[编辑]
我刚刚尝试使用 Android Studio 示例滚动 Activity ,它看起来像是来自 Google 支持存储库的错误。
事实上,当使用支持版本 26.1.O(与 26.0.0 和 26.0.2 相同)时,我所说的 bug 是存在的,但是如果您尝试使用版本 26.0.0-alpha1 或 26.0.0-beta1,它实际上正在工作......

谷歌有两个关于这个的开放错误:
https://issuetracker.google.com/u/1/issues/66996774
https://issuetracker.google.com/u/1/issues/68077101

如果您遇到同样的问题,请为这些错误加注星标

最佳答案

谷歌刚刚发布了这个错误的解决方法,稍后会公开发布。

https://gist.github.com/chrisbanes/8391b5adb9ee42180893300850ed02f2

关于android - 滚动时单击不在 CoordinatorLayout 中的 RecyclerView 上工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46862910/

相关文章:

Android - Firebase 动态 Facebook 按钮

android - Kotlin 懒惰使用

如果该位置的 View 在屏幕上不可见或滚出,则 Android Recyclerview notifyItemChanged(position ,payLoad) 不起作用

javascript - 在 Chrome 中滚动时出现 "rubber-band"问题

javascript - 修复了某些滚动后 div 位于其他 div 内的问题

android:TextView 的 LayoutParams 以编程方式使 View 消失

android - 如何在 Kotlin 中抑制单行警告

java - RecyclerView 未附加到 Adapter

java - 如何使用 RecyclerView 创建两列?

jquery - 使用 jQuery 在向上滚动和向下滚动时添加不同的 CSS 动画