最終更新:
moonlight_aska 2013年09月29日(日) 18:05:15履歴
「Googleマップを表示する」を参照し, Googleマップが表示できるようにする.
現在地ボタンをクリックすると, 現在地が画面中央にくるように表示される.

- MainActivity.java
- GoogleMapのインスタンスを取得する.
- GoogleMap#setMyLocationEnabledメソッドで, MyLocationレイヤーを有効にする.
- GoogleMap#getUiSettingsメソッドで, UiSettingsのインスタンスを取得する.
- UiSettings#setMyLocationButtonEnabledメソッドで, 現在地ボタンを有効にする. (defaultで有効)
package com.moonlight_aska.android.googlemapv2;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.UiSettings;
import com.google.android.gms.maps.model.CameraPosition;
import com.google.android.gms.maps.model.LatLng;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
public class MainActivity extends FragmentActivity {
// 六甲山:北緯34度46分41秒, 東経135度15分49秒
private double mLatitude = 34.0d + 46.0d/60 + 41.0d/(60*60);
private double mLongitude = 135.0d + 15.0d/60 + 49.0d/(60*60);
private GoogleMap mMap = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
mMap = ( (SupportMapFragment)getSupportFragmentManager().findFragmentById(R.id.map) ).getMap();
if (mMap != null) {
LatLng location = new LatLng(mLatitude, mLongitude);
CameraPosition cameraPos = new CameraPosition.Builder()
.target(location).zoom(10.0f)
.build();
mMap.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPos));
// MyLocationレイヤーを有効に
mMap.setMyLocationEnabled(true);
// MyLocationButtonを有効に
UiSettings settings = mMap.getUiSettings();
settings.setMyLocationButtonEnabled(true);
}
}
}
- 動作例
現在地ボタンをクリックすると, 現在地が画面中央にくるように表示される.

コメントをかく