google map にピンマーカー表示

google map にピンマーカー表示

やり方は
GoogleMap インスタンスを取得
マーカーの表示位置などを格納したMarkerOptions インスタンスを生成

addMarker() でマーカー追加

続いて構文メモ

GoogleMap getMap()
GoogleMap インスタンスを取得

LatLng(double latitude,double longitude)
マーカーの表示位置用インスタンス

MarkerOptions position(LatLng position)
マーカーの表示位置を設定

MarkerOptions title(String title)
マーカーのタイトルを設定

MarkerOptions snippet(String snippet)
マーカーのスニペット設定

MarkerOptions icon(BitmapDescriptar icon)
マーカー上に表示するアイコンを設定

Marker addMarker(MarkerOptions options)
マーカーを追加

そして引数のメモ

latitude
緯度

longitude
経度

position
マーカーの表J位置を示すLatLngインスタンス

title
マーカーのタイトル用文字列

options
マーカー表示用オプション

あと
画面上にピン状マーカーを表示したいのなら
getMap() で
GoogleMap メソッドを取得し
addMarker() でピンの追加をする

マーカーのパラメータは
MarkerOptionsインスタンスを生成して設定する

では実験
サンプルを元にカスタマイズしていく

レイアウトファイルはそのまま使う
使うのは zoom.xml

MainActivity を書き換えるけど
前回作成した東京駅を表示するマップを改造する

		setContentView(R.layout.zoom);

		FragmentManager fragmentManager = getSupportFragmentManager();
		SupportMapFragment fragment =(SupportMapFragment)fragmentManager.findFragmentById(R.id.fragmentMap);
		
		//google map instance 取得
		GoogleMap map = fragment.getMap();
		
		//表示位置の生成(東京駅)
		LatLng posTokyoStation = new LatLng(35.681382, 139.766084);
		
		//東京駅の表示
		CameraPosition.Builder builder=new CameraPosition.Builder();
		//カメラの表示位置の指定
		builder.target(posTokyoStation);
		//ズームレベル
		builder.zoom(13.0f);
		//カメラの向きの指定(北向きなので0)
		builder.bearing(0);
		//カメラの傾き設定
		builder.tilt(25.0f);
		//マップの表示位置変更
		map.moveCamera(CameraUpdateFactory.newCameraPosition(builder.build()));

はそのまま使い

ピンの追加コードを書いていく

		//ピン設定
		MarkerOptions options=new MarkerOptions();
		//ピンの場所を東京駅にする
		options.position(posTokyoStation);
		//マーカーの吹き出しの名前
		options.title("東京駅");
		
		//ピンの追加
		map.addMarker(options);

基本的にはこれでOK

これでピンをタップすると
東京駅
と表示される

これを応用すればAPIとかと合わせてお店とかできそう

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です