2016-06-27 66 views
0

我目前正在Android Studio for Google Maps上進行編碼。在Google地圖(Android Studio)上的選定位置周圍顯示標記?

我使搜索功能基於在搜索欄上搜索到的文本工作。一旦用戶按下「搜索」,地圖將放大到所選位置並放置彩色標記。

但是,我想這樣做: - 一旦你選擇的位置,你會顯示基於一定的半徑/特定區域的幾個標記。

非常感謝!我希望很快得到你的回覆!

回答

1

您可以將標記作爲不可見添加到地圖中,並計算所需位置與每個標記之間的距離,以顯示距離比給定距離更近的標記。

private List<Marker> markers = new ArrayList<>(); // List to hold your markers 

添加標記到地圖和列表:

Marker marker = mMap.addMarker(new MarkerOptions().position(yourPosition).visible(false)); 
markers.add(marker); 

,然後創建一個,給定一個LatLng一個函數計算到每個標記的距離(我使用SphericalUtil.computeDistanceBetweenGoogle Maps Android API Utility Library )並顯示期望的標記:

private void showMarkers(LatLng location, float distance) { 
    for(Marker marker : markers) { 
     if (SphericalUtil.computeDistanceBetween(marker.getPosition(), location) <= distance) { 
      marker.setVisible(true); 
     } else { 
      marker.setVisible(false); 
     } 
    } 
} 
相關問題