如何在地图片段活动上显示按钮

Posted

技术标签:

【中文标题】如何在地图片段活动上显示按钮【英文标题】:How can I show button over map fragment activity 【发布时间】:2020-09-27 06:52:06 【问题描述】:

我在我的 android 项目中使用 map api 来捕获当前位置并在它成功捕获当前位置时标记我想要的位置,然后应该可以看到一个按钮,上面写着 Proceed Next,当用户按下它时,它会进入下一个活动。 在正常活动中,我可以知道我们有可见性属性,但如何在地图片段中执行?

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

<fragment xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/map"
    android:name="com.google.android.gms.maps.SupportMapFragment"
    android:layout_
    android:layout_
    tools:context=".MapsActivity" >
</fragment>

提前致谢。

【问题讨论】:

【参考方案1】:

将地图片段包裹在RelativeLayout中,并在地图片段之后添加一个按钮

<RelativeLayout
    android:layout_
    android:layout_>
    <fragment
        class="com.google.android.gms.maps.MapFragment"
        android:layout_
        android:layout_/>

    <!--Button appears over the map and you can position within it's parent view and toggle the visibility from the code-->
    <Button
        android:id="@+id/proceed_btn"
        android:text="Proceed"

        <!--Remove comment if you want the button to be hidden by default-->
        <!-- android:visibility="gone" -->

        <!--Align to the right-->
        android:layout_alignParentRight="true"

        <!--Align at the bottom-->
        android:layout_alignParentBottom="true"

        android:layout_
        android:layout_ />
</RelativeLayout>

【讨论】:

【参考方案2】:

使用

<RealtiveLayout>

获得这个。

【讨论】:

我如何管理这段代码?? schemas.android.com/apk/res/android" xmlns:tools="schemas.android.com/tools" android:id="@+id/map" android: name="com.google.android.gms.maps.SupportMapFragment" android:layout_ android:layout_ tools:context=".MapsActivity" > 【参考方案3】:

您可以在 中创建按钮,并在获取当前位置时将可见性默认设置为 false,然后将按钮可见性设置为 true;

<fragment 
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/map"
android:name="com.google.android.gms.maps.SupportMapFragment"
android:layout_
android:layout_
tools:context="com.example.LocationChooser">


<Button
    android:layout_
    android:layout_
    android:layout_gravity="right|bottom"
    android:text="Next" 
    android:padding="10dp"
    android:layout_marginTop="20dp"
    android:paddingRight="10dp"/>

【讨论】:

以上是关于如何在地图片段活动上显示按钮的主要内容,如果未能解决你的问题,请参考以下文章

如何从片段外部清除/重置地图?

如何设置主活动中显示的默认片段?

Kotlin:片段内的按钮需要在开始活动之前单击两次。如何一键启动活动?

如何在使用片段和计时器的选项卡式活动上更新 UI

如何使用活动显示的片段转到上一个活动

如何在地图片段 API v2 布局顶部添加按钮