2016-05-22 17 views

答えて

2

カスタム表示xmlファイル内で、マップフラグメントのサイズを変更してみてください。下の例では、高さと幅を30dpに設定しました。

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

あなたのxmlでこれを試してみてください:

<!-- Map --> 
<FrameLayout 
    android:id="@+id/map_container" 
    android:layout_width="match_parent" 
    android:layout_height="200dp""> 
</FrameLayout> 

そして、あなたのコード内:あなたはフラグメント内にあるかどうかを

// This method adds map fragment to the container. 
private void addMapFragment() { 
    SupportMapFragment mMapFragment = SupportMapFragment.newInstance(); 
    mMapFragment.getMapAsync(this); 
    getSupportFragmentManager().beginTransaction() 
      .replace(R.id.map_container, mMapFragment) 
      .commit(); 
} 

またgetChildFragmentManager()の代わりgetSupportFragmentManager()を使用しています。あなたの活動のxmlファイル内

-1
<fragment 
     android:id="@+id/map" 
     android:name="com.google.android.gms.maps.SupportMapFragment" 
     android:layout_width="match_parent" 
     android:layout_height="match_parent" 
     /> 

過去とフラグメント 元のIDに変更:アンドロイド:ID = "@ + ID/MAP1"

その後、

後藤あなたのjavaファイルと過去のsetContent後に上に

MapFragment mMapFragment = MapFragment.newInstance(); 
     FragmentTransaction fragmentTransaction = 
       getFragmentManager().beginTransaction(); 
     fragmentTransaction.add(R.id.map1, mMapFragment); 
     fragmentTransaction.commit(); 
     mMapFragment.getMapAsync(this); 

がonMapReadyCallBack実装するメソッドを作成し、活動にオーバライド

注:これは、アプリケーションでGoogleマップを追加した場合にのみ有効です。

関連する問題