Google maps 添加默认谷歌地图活动上的按钮

Google maps 添加默认谷歌地图活动上的按钮,google-maps,android-studio,mapfragment,Google Maps,Android Studio,Mapfragment,我想在android studio中默认的Google地图活动上添加一个按钮。我尝试通过如下方式更改Googlemap片段的XML代码: <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="

我想在android studio中默认的Google地图活动上添加一个按钮。我尝试通过如下方式更改Googlemap片段的XML代码:

<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent" >

<fragment
    android:id="@+id/location_map"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    class="com.google.android.gms.maps.SupportMapFragment" />
<Button
    android:id="@+id/button1"
    android:layout_width="match_parent"
    android:layout_height="fill_parent"
    android:padding="0dp"
    android:paddingBottom="0dp"
    android:background="#359c5e"
    android:text="@string/go"
    android:textColor="#ffffff" />

但我无法在我的mapfragment上获取按钮。我尝试了很多方法,在XML文件中编写片段前的按钮和Viceversa,但仍然面临同样的问题

我的要求是

  • 在mapfragment上创建按钮
  • 当它被点击时,它应该在上面显示一些定制的标记

  • 如何完成这项任务?感谢您的建议。

    使用此布局。这可以解决您的问题。(对于第一个要求)

    这将使地图片段首先占据所有屏幕,然后按钮将位于屏幕的右上角。由于地图在整个屏幕上,按钮将位于地图上方,地图的某些部分将被覆盖

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    
    <fragment
        android:id="@+id/location_map"
        class="com.google.android.gms.maps.SupportMapFragment"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="true"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#359c5e"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:padding="8dp"
        android:layout_margin="5dp"
        android:text="@string/go"
        android:textColor="#ffffff" />
    
    </RelativeLayout>
    
    
    
    第二项要求

    您可以为按钮使用onclicklistener,并在地图上显示这些标记


    让我知道它是如何为您工作的。

    使用此布局。这可以解决您的问题。(对于第一个要求)

    这将使地图片段首先占据所有屏幕,然后按钮将位于屏幕的右上角。由于地图在整个屏幕上,按钮将位于地图上方,地图的某些部分将被覆盖

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical">
    
    <fragment
        android:id="@+id/location_map"
        class="com.google.android.gms.maps.SupportMapFragment"
        android:layout_alignParentTop="true"
        android:layout_alignParentStart="true"
        android:layout_width="match_parent"
        android:layout_height="match_parent" />
    
    <Button
        android:id="@+id/button1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:background="#359c5e"
        android:layout_alignParentTop="true"
        android:layout_alignParentEnd="true"
        android:padding="8dp"
        android:layout_margin="5dp"
        android:text="@string/go"
        android:textColor="#ffffff" />
    
    </RelativeLayout>
    
    
    
    第二项要求

    您可以为按钮使用onclicklistener,并在地图上显示这些标记


    让我知道它是如何为您工作的。

    请详细解释第二个要求。您想要地图片段上的按钮,还是想要地图片段上的按钮。请具体说明。地图片段上的按钮和地图片段上方的按钮是否不同?您希望地图布满整个屏幕,然后按钮覆盖地图的某些部分?或者你想要屏幕上的按钮,但不隐藏地图的任何部分(这里的按钮不会在地图上,它会在一边,地图不会覆盖整个屏幕)?是的,明白了。我想把地图放在整个屏幕上,然后把按钮放在地图片段的右上角,点击后应该会显示定制的标记。请详细解释第二个要求。你想把按钮放在地图片段上,还是把按钮放在地图片段上。请具体说明。地图片段上的按钮和地图片段上方的按钮是否不同?您希望地图布满整个屏幕,然后按钮覆盖地图的某些部分?或者你想要屏幕上的按钮,但不隐藏地图的任何部分(这里的按钮不会在地图上,它会在一边,地图不会覆盖整个屏幕)?是的,明白了。我希望整个屏幕上的地图,然后按钮在地图片段的右上角,这应该显示自定义标记点击它。