Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/.net/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 在子视图中分析触摸事件,如果条件不满足,则让父视图处理这些事件_Android_Android Listview_Custom Controls_Touch Event - Fatal编程技术网

Android 在子视图中分析触摸事件,如果条件不满足,则让父视图处理这些事件

Android 在子视图中分析触摸事件,如果条件不满足,则让父视图处理这些事件,android,android-listview,custom-controls,touch-event,Android,Android Listview,Custom Controls,Touch Event,我已经扩展了一个框架布局并覆盖了onInterceptTouchEvent()和onTouchEvent()。此自定义Framelayout将是我的ListView行的根布局 我的要求是,如果我点击ListView中的一行,如果我滚动(向上/向下),列表会像往常一样滚动,那么应该调用onItemClickListener。但是,如果我滚动(左/右)或滑动(左/右),自定义FrameLayout应该根据我执行操作的行执行一些操作 我的想法是,我将覆盖InterceptTouchEvent上的,监视

我已经扩展了一个框架布局并覆盖了onInterceptTouchEvent()onTouchEvent()。此自定义Framelayout将是我的ListView行的根布局

我的要求是,如果我点击ListView中的一行,如果我滚动(向上/向下),列表会像往常一样滚动,那么应该调用onItemClickListener。但是,如果我滚动(左/右)或滑动(左/右),自定义FrameLayout应该根据我执行操作的行执行一些操作

我的想法是,我将覆盖InterceptTouchEvent上的,监视事件,如果我看到动作的调用足以使其成为滚动/滑动,那么我将控制并执行任务。如果是轻触或其他手势,则让默认流发生

我现在面临的问题是,如果我的framelayout不包含任何可触摸的子对象,那么我在操作结束后不会收到任何调用。如果我在我的onTouchEvent()中接收到动作_DOWN以便分析手势的类型,那么如果我计算并发现该动作实际上只是一个点击/垂直滚动,那么我就无法控制默认流程的发生

是否有某种方式可以让孩子掌握事件(动作_DOWN和动作_MOVE),如果条件满足,则执行动作,或者让家长处理这些相同的事件


是否有其他方法可以满足这一要求?

您找到了吗?我遇到了同样的问题。