2013-06-14 16 views
7

Mam problem z Google DrawerLayout gdy jest umieszczony w działalności z fragmentu mapy. Nie próbowałem z MapView, ale obawiam się, że problem pozostanie ten sam.DrawerLayout z Google Maps

Używam Google DrawerLayout z biblioteki pomocy (v13) i umieszczam w nim mapę.

Problem mam jest lepiej wyjaśnione poprzez obrazy ... Na 2,2-2,3 (dzieła na 4.0 i nowsze) szuflada nie pojawi się, jeśli to się skończy gdziekolwiek google map fragment jest rysowany. Reszta widoku wraz z widżetami na widoku jest odpowiednio zacieniowana, ale nie mapa.

Oto mój układ xml

<?xml version="1.0" encoding="utf-8"?> 
<android.support.v4.widget.DrawerLayout 
     xmlns:map="http://schemas.android.com/apk/res-auto" 
     xmlns:android="http://schemas.android.com/apk/res/android" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent"> 
    <LinearLayout 
      android:layout_width="fill_parent" 
      android:layout_height="fill_parent" 
      android:orientation="vertical" 
      android:weightSum="4"> 
     <fragment 
       android:id="@+id/map" 
       android:layout_width="match_parent" 
       android:layout_height="0dp" 
       android:layout_weight="3" 
       android:name="com.google.android.gms.maps.SupportMapFragment" 
       android:scrollingCache="false" 
       map:cameraTargetLat="39.828325" 
       map:cameraTargetLng="-98.579728" 
       map:cameraZoom="2" 
       map:cameraTilt="0" 
       map:cameraBearing="0"/> 
     <LinearLayout 
       android:id="@+id/map_fragmentHolder" 
       android:layout_height="0dp" 
       android:layout_width="match_parent" 
       android:orientation="vertical" 
       android:layout_weight="1" /> 
    </LinearLayout> 
    <include 
     layout="@layout/menu_layout" 
     android:layout_height="wrap_content" 
     android:layout_width="match_parent" 
     android:layout_gravity="start" /> 

</android.support.v4.widget.DrawerLayout> 

Oto, co jest widoczne na urządzeniach 2.x, zrzut zostanie podjęta w terminie Android monitorze debugowania, a kwadrat powinien być jeden z przycisków mojego DrawerLayout za

Android 2.x

ten sposób powinno wyglądać:

Android 4.x

Mam obawy, że jest to spowodowane faktem, że obiekt Gmaps został narysowany na FrameLayout, ale tak naprawdę nie wiem.

Ktoś napotyka ten problem lub ma pomysły, jak rozwiązać ten problem? Dzięki.

+1

Dostaję również problem. Co gorsza, doświadczam tego na telefonie z uruchomionym 4.0.3. Brak problemów na urządzeniach obsługujących Jelly Bean. –

Odpowiedz

10

wpadłem na ten problem i próbowałem tego rozwiązania: https://stackoverflow.com/a/16231935/267559. To zadziałało dla mnie. Proszę spróbować.

+0

Doskonale, to działało idealnie! Dzięki Shiun. – Doge

+1

BTW, przezroczysta FrameLayout działa też i podobno jest lżejsze niż View. Spróbuj. – Shiun