浜松のWEBシステム開発・スマートフォンアプリ開発・RTK-GNSS関連の開発はお任せください
株式会社シーポイントラボ
TEL:053-543-9889
営業時間:9:00~18:00(月〜金)
住所:静岡県浜松市中区富塚町1933-1 佐鳴湖パークタウンサウス2F

【androidjava】緯度経度配列を作って順番にaddMarkerしていく

配列に詰めた緯度経度は、addMarkerでオプションを決める前に

forで囲むことで順番に入れることが出来ます。

 

<pre>List<LatLng> points = new ArrayList<LatLng>();

String[] title = {"静岡県袋井市長溝","静岡県磐田市鎌田","静岡県磐田市明ケ島原","静岡県袋井市浅名","静岡県磐田市国府台","静岡県浜松市南区青屋町"};</pre>
double[] pointY = {137.906055,137.887430,137.882537,137.921075,137.844085,137.780227};
double[] pointX = {34.715935,34.714595,34.729127,34.705211,34.717135,34.716782};

for (int i = 0 ; i < pointX.length; i++){
points.add(new LatLng(pointX[i],pointY[i]));
}
MapFragment mapFragment = (MapFragment) getFragmentManager()
.findFragmentById(R.id.mapFragment);
mapFragment.getMapAsync( this);

@Override
public void onMapReady(GoogleMap googleMap) {
mMap= googleMap;
mMap.setOnMarkerClickListener(this);
for(int i =0; i < points.size(); i++) {
marker = mMap.addMarker(new MarkerOptions()
.title(title[i])
.draggable(false)
.position(points.get(i)));
marker.setTag(i);
}
CameraUpdate update = CameraUpdateFactory.newLatLngZoom(points.get(0), 10.0f);
mMap.getUiSettings().setZoomControlsEnabled(true);
googleMap.moveCamera(update);
}

 

latlng配列を作っておき、pointYとpointXをforで回していきます。

これで、緯度経度が入ったlatlng配列ができたので、今度はこの要素

だけaddMarkerのオプションを追加していきます。

 

最後にmMap.setOnMarkerClickListener(this);を忘れない様に

注意してください。これがないとマーカーを押しても

何も起きないので必ず確認しておきましょう。

 

ここまでは簡単だったので、次はsetInfoWindowAdapterを使って

画像とスニペットが一緒になった吹き出しに挑戦してみようと思います。

 

 

  • この記事いいね! (0)