3

最近我的滚动视图遇到了一些问题。发生甩动后,触摸事件不会到达滚动视图内的元素。发生投掷后,我首先需要再次点击视图,然后恢复正常行为。我已经尝试了很多解决方法,例如:

  • 投掷后手动触发运动事件(向上/向下)。这可行,但有一些严重的问题,我不必解释为什么我猜,因为这与再次触摸视图相同,但在某个 x+y 处。
  • 拦截触摸事件并始终将它们传递给底层视图。

但这一切都很麻烦,而且这似乎首先是不受欢迎的行为,不是吗?

似乎滚动视图在 onfling 发生后拦截了所有内容,直到新的正常(无 fling)向上和向下触摸。

 <android.support.v4.widget.NestedScrollView
    android:id="@+id/fsv_content"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    android:background="@color/white">

    <ImageView
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:adjustViewBounds="true"
        android:src="@drawable/marker"
        android:padding="@dimen/spacing_small"/>

    <android.support.v7.widget.RecyclerView
        android:id="@+id/rv_jobs"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        app:layout_behavior="@string/appbar_scrolling_view_behavior"
        />

</LinearLayout>

</android.support.v4.widget.NestedScrollView>
4

1 回答 1

-1

您有一个滚动视图 ( NestedScrollView),其中包含另一个滚动视图 ( RecyclerView)。对我来说听起来很麻烦。

为什么需要这样的布局?

于 2015-10-29T13:01:16.313 回答