Android 当谷歌地图标记被放置在屏幕上的某个位置时,如何触发事件?
谷歌地图标记可以在屏幕上拖动,所以我想知道当标记被放置在屏幕上的某个位置时,是否有方法触发事件,比如说,左下角。我认为标记不会自动放置。它们由您的代码处理。例如,您可以在地图单击或地图长单击时添加标记。获取该事件,并在创建布局并初始化映射后尝试修复,在onCreate()中添加以下代码Android 当谷歌地图标记被放置在屏幕上的某个位置时,如何触发事件?,android,google-maps,events,drag-and-drop,marker,Android,Google Maps,Events,Drag And Drop,Marker,谷歌地图标记可以在屏幕上拖动,所以我想知道当标记被放置在屏幕上的某个位置时,是否有方法触发事件,比如说,左下角。我认为标记不会自动放置。它们由您的代码处理。例如,您可以在地图单击或地图长单击时添加标记。获取该事件,并在创建布局并初始化映射后尝试修复,在onCreate()中添加以下代码 按位置勾选否我指的是我提到的屏幕位置(x,y)坐标,如屏幕左下角。通过设置,可以拖动。拖动(true)我想知道如何根据事件在屏幕上的位置触发事件,如我问的那样,在这种情况下,您可以 View mapVie
按位置勾选否我指的是我提到的屏幕位置(x,y)坐标,如屏幕左下角。通过设置
,可以拖动。拖动(true)
我想知道如何根据事件在屏幕上的位置触发事件,如我问的那样,在这种情况下,您可以
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
}
}
});
}