谷歌地圖標記可以在屏幕上拖動,所以我想知道是否有辦法在標記放置在屏幕上的某個位置(例如左下角)時觸發事件。如何在谷歌地圖標記被放置在屏幕上的某個位置時觸發事件?
回答
在創建佈局和映射初始化後,在onCreate()中添加以下代碼:
View mapView = getSupportFragmentManager().findFragmentById(R.id.map).getView();
if (mapView.getViewTreeObserver().isAlive()) {
mapView.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
@Override
public void onGlobalLayout() {
mapView.getViewTreeObserver().removeGlobalOnLayoutListener(this);
map.moveCamera(CameraUpdateFactory.newLatLngZoom(CENTER, 15));
Point markerScreenPosition = map.getProjection().toScreenLocation(marker.getPosition());
int x = markerScreenPosition.getX();
int y = markerScreenPosition.getY();
if(x == yourValue && y == yourValue){
//your trigger code goes here
}
}
});
}
不按位置我的意思是屏幕位置(x,y)座標,因爲我已經提到過屏幕左下角 – Nobody
我編輯了我的答案。希望這可以幫助。 – tahsinRupam
我認爲標記不會自動丟棄。他們由您的代碼處理。例如,您可以在地圖點擊或地圖長按上添加標記。獲取該事件並嘗試修復
它可以通過設置可拖動'.draggable(真)'我想要知道如何觸發一個事件,基於它在屏幕上的位置,就像我已經問過 – Nobody
這樣的情況下,你可以[試試這個](https://developers.google.com/android/reference/com /google/android/gms/maps/GoogleMap.OnMarkerDragListener) –
- 1. 如何在谷歌地圖上的屏幕中心放置一個標記
- 2. 在谷歌地圖上更改標記位置的縮放?
- 3. 如何在第一個位置放置不同的谷歌地圖標記
- 4. 如何在谷歌地圖上設置屏幕中心的標記
- 5. 谷歌地圖:瞭解事件被觸發的標記
- 6. 離子谷歌地圖,如何設置標記上的位置?
- 7. 如何在谷歌地圖上更新標記位置?
- 8. 谷歌地圖相機在多個標記上的位置
- 9. 在谷歌地圖上爲每個位置設置位置標記
- 10. 單擊谷歌地圖上的事件標記沒有觸發
- 11. 谷歌地圖上的位置名稱/標記位置
- 12. 谷歌地圖的位置標記
- 13. 谷歌地圖中的標記放置事件?
- 14. 當元素到達屏幕上的位置時觸發事件
- 15. 在谷歌地圖上放置標記標題
- 16. 在谷歌地圖上設置位置
- 17. 谷歌地圖幫助放置標記
- 18. 谷歌地圖,不能放置標記
- 19. 將標記放置到谷歌地圖
- 20. 如何在PHP中放置新的標記谷歌地圖?
- 21. 更新谷歌地圖標記位置
- 22. 如何從一個事件在屏幕上放置圖像?
- 23. 谷歌地圖infowindow在自定義標記上的位置
- 24. 如何在屏幕上的任何位置放置視圖?
- 25. 谷歌地圖上的設置標記
- 26. 在地圖中放置位置標記?
- 27. 在屏幕上獲取Google地圖標記位置
- 28. 如何在谷歌地圖預定義位置添加標記
- 29. 使用ASP.Net在谷歌地圖上定位位置和標記位置
- 30. 谷歌地圖API V3 - 在同一地圖上有兩個標記的位置
檢查https://developers.google.com/android/reference/com/google/android/gms/maps/GoogleMap.OnMarkerDragListener – AndroidRuntimeException