Android 如何禁用俯视图的触摸事件,使其允许触摸事件传递到基础视图?

Android 如何禁用俯视图的触摸事件,使其允许触摸事件传递到基础视图?,android,xml,Android,Xml,我是一个android初学者,一直在寻找解决这个问题的方法,但显然找不到 我有一个谷歌地图片段和一个画布,在XML中占据了相同的空间。画布上画了一个圆圈。但在当前设置下,canvas不允许触摸事件传递到地图。我想要一个透明的画布,在地图视图的顶部有一个圆圈,这样可以在画布上禁用触摸事件,但地图会接收触摸事件。请注意,使用GoogleMap的Circle类代替canvas不是一个选项。 这是我的XML。[在此处输入图像描述][1] <FrameLayout andro

我是一个android初学者,一直在寻找解决这个问题的方法,但显然找不到 我有一个谷歌地图片段和一个画布,在XML中占据了相同的空间。画布上画了一个圆圈。但在当前设置下,canvas不允许触摸事件传递到地图。我想要一个透明的画布,在地图视图的顶部有一个圆圈,这样可以在画布上禁用触摸事件,但地图会接收触摸事件。请注意,使用GoogleMap的Circle类代替canvas不是一个选项。 这是我的XML。[在此处输入图像描述][1]

<FrameLayout
            android:layout_width="wrap_content"
            android:layout_height="wrap_content">
                    <fragment 
                  xmlns:android="http://schemas.android.com/apk/res/android"
                        android:id="@+id/map"
                        android:name="com.google.android.gms.maps.MapFragment"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"

                        />

                    <com.example.murtaza.bettertracker.ui.CircleCanvasClass
                        android:id="@+id/circleView"
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:visibility="visible" />
            />
</FrameLayout>

/>

在俯视图上设置触控监听器

topview.setOnTouchListener(new View.OnTouchListener{ 
  public boolean onTouch(View v, MotionEvent e){ 
    return false; 
  }
});

您可以将onTouchListener设置为俯视图并返回false。感谢您的回复。按照您的建议执行操作仍然不会让触摸事件传递到基础视图。它适用于按钮等的基础按钮,但不适用于画布的基础mapFragment。我认为这与canvas子类化View类有关,我需要重写某些View方法来启用此行为。尝试将clickable设置为false。我不确定这是否有效。如我所说,将clickable设置为false对按钮下面的按钮有效,但对canvas下面的mapFragment无效。