我正面临着一种奇怪的行为,RecyclerView是CoordinatorLayout的第二个孩子,就在AppBarLayout之后(正如许多示例中所描述的那样)。
我的问题是,当我滚动回收器视图时,我想单击一个特定的项目。有时我需要点击两次才能选择那个项目,它似乎与放纵行为有关。例如,如果我滚动到回收器视图的底部,然后如果我将手指从屏幕底部向顶部抛出(为了查看更多数据,但在我的情况下,我不能看到更多数据,因为我已经到了底部),然后快速单击一个项目,似乎停止了滚动,第二次单击实际上选择了该项目……当使用不带CoordinatorLayout的简单回收器视图时,这种行为显然不会发生。
我的recyclerview只保存了一个简单的字符串列表,并使用以下布局行为:@ String /appbar_scrolling_view_behavior
你知道为什么吗?
编辑我刚刚尝试了Android Studio示例滚动活动,它看起来像是Google支持库中的一个bug。事实上,当使用支持版本26.1.0(与26.0.0和26.0.2相同)时,我所说的bug是存在的,但如果您尝试使用版本26.0.0-alpha1或26.0.0-beta1,它实际上是有效的……
关于这个问题,谷歌有两个公开的bug:https://issuetracker.google.com/u/1/issues/66996774 https://issuetracker.google.com/u/1/issues/68077101
如果您正面临同样的问题,请启动这些错误
发布于 2017-11-06 20:46:10
谷歌刚刚发布了一个针对此错误的解决方案,稍后将公开发布。
https://gist.github.com/chrisbanes/8391b5adb9ee42180893300850ed02f2
发布于 2019-02-07 21:26:33
如果在NestedScrollView中使用RecyclerView,则将以下行添加到RecyclerView:
android:nestedScrollingEnabled="false"
我希望它能对你有所帮助。
https://stackoverflow.com/questions/46862910
复制相似问题