谷歌地图片段在圆形视图中

时间:2016-02-17 09:44:12

标签: android google-maps android-fragments

我想在圆形视图中显示Google地图片段。这是我定义的XML布局:

    <FrameLayout
    android:layout_width="200dp"
    android:layout_centerInParent="true"
    android:layout_height="200dp">



    <fragment
        android:id="@+id/map"
        android:name="com.google.android.gms.maps.SupportMapFragment"
        android:layout_width="200dp"
        android:layout_gravity="center"

        android:layout_height="200dp"
         />


    <ImageView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:src="@drawable/circle"
        android:layout_gravity="center" />


</FrameLayout>

这是我得到的输出:

如您所见,地图片段覆盖整个帧布局,从而使其成为矩形。我想把它绑在圈内。

1 个答案:

答案 0 :(得分:0)

将framelayout作为片段的容器,并为framelayout添加背景

framelayout容器

<FrameLayout
    android:id="@+id/container"
    android:layout_width="200dp"
    android:layout_height="200dp"
    android:layout_centerInParent="true"
    android:background="@drawable/circular_background"></FrameLayout>

circular_background

<?xml version="1.0" encoding="UTF-8"?>
<shape xmlns:android="http://schemas.android.com/apk/res/android">
<solid android:color="#FFFFFF" />
<stroke
    android:width="3dip"
    android:color="#B1BCBE" />
<corners android:radius="200dip" />
<padding
    android:bottom="0dip"
    android:left="0dip"
    android:right="0dip"
    android:top="0dip" />

将片段动态添加到您的应用程序

getSupportFragmentManager().beginTransaction().add(R.id.container, new Circular_fragment()).commit();