2016-02-17 2 views
5

Je souhaite afficher un fragment Google Map dans une vue circulaire. Ceci est la mise en page XML que je l'ai défini:Fragment Google Map dans une vue circulaire

<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> 

Ceci est la sortie que je reçois:

Comme vous pouvez le voir le fragment de carte couvre la mise en page l'ensemble du cadre permettant ainsi rectangle . Je veux le lier à l'intérieur du cercle.

+0

Veuillez accepter la réponse si cela fonctionne. –

+0

Désolé, ça ne marche pas – AnupamChugh

+0

La réponse éditée est éprouvée. Will work :) –

Répondre

0

Avoir un framelayout comme un récipient à votre fragment et ajouter un fond à la framelayout

conteneur 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" /> 

ajouter le fragment dynamiquement à votre application

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

L'utilisation d'un fragment de mappage de support ne fonctionne pas. Il affiche toujours une vue carrée – AnupamChugh

+0

Pouvez-vous partager votre code –

+0

Juste ajouté la balise de fragment de carte de support à l'intérieur du FrameLayout. – AnupamChugh