下面是我的当前情况:我不能点击工具栏,因为有一个视图是重叠的,它拦截触摸响应。我会扩展:我正在制作一个音乐应用程序。在音乐应用程序中,工具栏下面有一个歌曲列表。但是,一旦单击歌曲,面板就会打开,并在工具栏上滑动,并继续进入透明的状态栏。将附上这方面的图片。
显然,由于这个视图与工具栏重叠,所以我实际上不能将工具栏用于任何触摸事件。但我需要。我不能将视图移到工具栏下面,因为我的滑动面板仅限于工具栏下面,而不是重叠。如果有什么事要解决的话,请告诉我。我非常感激。
因此,在我目前的情况下,我想也许我可以触摸视图中覆盖工具栏的部分,并将数据发送到包含工具栏的视图中,这样我就可以检测到工具栏上的触摸。然而,我不知道如何做到这一点,甚至可能。
我的问题是:如何检测到另一个视图下的视图中的触摸?
以下是图片:以下是歌曲列表:

当歌曲面板打开时(我使用的是一张老虎的图片,用于任何一首目前没有艺术的歌曲):

谢谢!
发布于 2015-02-13 05:37:27
见鬼?您希望您的用户可以触摸工具栏,因为它与另一个视图重叠,因此此时不可见。什么样的用户会期望这样的用户体验?
我是说:
然而,您有三种可能性:
overlappingView.setClickable(false);单击。onOptionsItemSelected() (伪造所需的参数),或者使用EventBus进行通信。OnClickListener,而是通过扩展从视图设置OnTouchListener ),并通过调用toolbar.onTouchEvent(motionEvent);将MotionEvent转发到工具栏发布于 2015-02-13 05:31:00
如果您确实希望检测另一个视图下的某个视图的触摸事件,可以将前景视图的onTouchEvent设置为false。但是,我建议您重新考虑布局,以便将工具栏放在顶部,这样用户就可以看到它,否则他们就不知道自己在点击什么。
https://stackoverflow.com/questions/28492749
复制相似问题