我有RelativeLayout
,其中包含ListView
。
当我上下滚动列表视图时,我会在RelativeLayout onInterceptTouchEvent()
上体验到这一点:
ACTION_DOWN
被解雇ACTION_MOVE
被解雇ACTION_UP
永远不会被解雇请注意:
有人可以对此作出解释吗?
===
这是我正在使用的简单布局:
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<ListView android:id="@+id/listview"
android:layout_alignParentTop="true"
android:layout_width="match_parent"
android:layout_height="wrap_content" />
</RelativeLayout>
答案 0 :(得分:1)
如果我理解正确,您希望RelativeLayout接收ACTION_UP事件。视图组(RelativeLayout)不会接收未来的触摸事件,除非它通过返回true表示对第一个触摸事件感兴趣 - 所以你应该从onInterceptTouchEvent返回true,而不是false。
Dave Smith在这里解释得很清楚:http://www.doubleencore.com/2014/01/dave-smiths-talk-from-andevcon-2013-android-touch/
摘要:返回true,而不是false。并观看该视频以获得更好的解释:)