NestedScrollview 中元素上的 Clicklistener / Touchlistener 会拦截滚动

Clicklistener / Touchlistener on elements inside NestedScrollview do intercept scroll

我的结构是这样的:

<CoordinatorLayout>
 <AppBarLayout>
  <CollpasingToolbarLayout>
   <ImageView />
   <Toolbar />
  </CollpasingToolbarLayout>
 </AppBarLayout>
 <NestedScrollView>
  <LinearLayout>
   <CardView>
     <LinearLayout />
   <CardView>
    ....
  </LinearLayout>
 </NestedScrollView>
 <TextView />
</CoordinatorLayout>

我在 cardview 元素上有一个 onClick/onTouchListener。 onTouch/onClick 事件有效。但是,如果我想在其中一个带有 onClickListener 的卡片元素上开始滚动,滚动视图就会被拦截,它根本不会滚动。

在一个非常相似但较旧的结构上它起作用了,但现在我尝试了所有方法但我仍然无法弄清楚我缺少什么。

有人知道吗?

非常感谢 干杯

这是 Android 支持库中的错误。看这里:https://code.google.com/p/android/issues/detail?id=182549

我遇到了同样的问题。这已通过最新的支持库版本 (23.1.0) 为我修复。

我遇到了同样的问题。确保您的 gradle 依赖项包括:

compile 'com.android.support:appcompat-v7:23.1.0'

您可以阅读 this article 以进一步了解新的支持库更新!