研究了不少網路上的文章及實做中,終於將顯示出小紅點。有測試宣告成陣列,再依序加入小紅點。及單獨宣告來加入小紅點,都測試成功。最後,再測試一些環境上的設定。上述的程式都是在onMapReady事件來設定。完整的程式碼,請參考下述:
@Override
public void onMapReady(GoogleMap googleMap) {
mMap = googleMap;
String[] arylat = new String[3];
String[] arylng = new String[3];
String[] arypointtitle = new String[3];
arylat[0] = "24.147225";
arylat[1] = "24.142509";
arylng[0]= "120.643003";
arylng[1]= "120.646425";
arypointtitle[0] = "IKEA宜家家居 台中店";
arypointtitle[1] = "星巴克 Starbucks-向心門市";
//利用陣列來加小紅點。
for (int i = 0; i < arypointtitle.length; i++) {
double dbelat = 0;
double dbelng = 0;
try {
dbelat = Double.parseDouble(arylat[i].trim());
dbelng = Double.parseDouble(arylng[i].trim());
//宣告MarkerOptions
LatLng objoption = new LatLng(dbelat, dbelng);
//加入Google Map,並且設定標題
mMap.addMarker(new MarkerOptions().position(objoption).title(arypointtitle[i]));
} catch (NullPointerException e)
{
}
}
//宣告MarkerOptions
LatLng objstartpoint = new LatLng(24.145269, 120.645637);
//加入Google Map,並且設定標題
mMap.addMarker(new MarkerOptions().position(objstartpoint).title("文心森林公園"));
//環境設定。
//設定 右下角的放大縮小功能
mMap.getUiSettings().setZoomControlsEnabled(true);
//設定 左上角的指南針,要兩指旋轉才會出現
mMap.getUiSettings().setCompassEnabled(true);
//設定 右下角的導覽及開啟 Google Map功能
mMap.getUiSettings().setMapToolbarEnabled(true);
//移動地圖到那個座標
mMap.moveCamera(CameraUpdateFactory.newLatLng(objstartpoint));
//放大地圖到15倍
mMap.animateCamera(CameraUpdateFactory.zoomTo(15));
}
最後,執行模擬機,就會看到下述的畫面。