請原諒我的英語不好,我是法國人!Android - 谷歌地圖V2:修正縮放顯示第一個可見標記
所以,我對我的Android應用程序有一個小問題。 我必須在地圖上集成Google地圖和顯示標記。然後,我必須dynamycaly放大用戶的位置。 沒關係。 但是!我想修正縮放以顯示第一個可見標記。
例如:如果距離這裏3公里處有一個標記,那麼對於已經從他那裏得到100米標記的用戶,縮放將不會相同!
你明白嗎?
非常感謝您的幫助!
請原諒我的英語不好,我是法國人!Android - 谷歌地圖V2:修正縮放顯示第一個可見標記
所以,我對我的Android應用程序有一個小問題。 我必須在地圖上集成Google地圖和顯示標記。然後,我必須dynamycaly放大用戶的位置。 沒關係。 但是!我想修正縮放以顯示第一個可見標記。
例如:如果距離這裏3公里處有一個標記,那麼對於已經從他那裏得到100米標記的用戶,縮放將不會相同!
你明白嗎?
非常感謝您的幫助!
final LatLngBounds.Builder bc = new LatLngBounds.Builder();
for (LatLng marker : markers) {
bc.include(marker);
}
bc.include(new LatLng(yourLat, yourLong));
map.setOnCameraChangeListener(new OnCameraChangeListener() {
@Override
public void onCameraChange(CameraPosition arg0) {
map.moveCamera(CameraUpdateFactory.newLatLngBounds(bc.build(), padding));
map.setOnCameraChangeListener(null);
}
});
這將設置正確的縮放以適合標記和您的位置,然後您可以添加一些額外的填充!由於尚未計算大小,因此您必須設置CameraChangeListener
以瞭解其大小,然後才能進行更新並刪除偵聽器。
謝謝!但是什麼是「標記」變量?你如何得到標記? –
「標記」僅僅是一個ArrayList
我有這個錯誤:aused:java.lang.IllegalStateException:地圖大小不應該爲0.最有可能的是,佈局還沒有發生的地圖視圖。 –
你有你的標記LatLng列表? – Carnal
你試過LatLngBound嗎? –