我有两个视图(一个是从SurfaceView派生的,另一个是从ImageView派生的),每个视图都封装在一个框架布局中,并且每个视图都实现了一个ontouchlistener,它被设置为视图本身的ontouchlistener。这两个视图(布局)在屏幕上没有交集。
但是,我不能让这两个监听器一起工作。
例如,如果视图A(监听器A)上有一个ACTION_DOWN,则监听器B不会做出反应(即使下面的动作在视图B上,也不会将事件分派给B),只有监听器A才会做出反应,直到没有触摸事件为止。
也就是说,即使监听器A只被设置为视图A的only监听器,它也会处理整个屏幕上的每个事件,而其他监听器则被禁止。
这对我来说很奇怪,有什么解释吗?on screen中可以同时存在两个on two吗?
发布于 2011-05-25 10:45:59
安卓系统的工作原理如here所述
发布于 2011-05-16 21:49:36
当然可以,就像两个按钮有自己的监听器。尝试将监听器设置为您的视图:
frameLayout.setOnClickListener();
imageView.setOnClickListener();这样,他们应该只对到达自己的监听器的事件做出反应。希望这能有所帮助。
https://stackoverflow.com/questions/6018057
复制相似问题