2014-11-02 72 views
0

我已经实现了可移动的标记在我的地图通过设置dragchangelistner和setdraggable标志为真。 但是当用户试图拖放标记时,我想显示一条警报,提示您是否要更新标记位置? 如果用户说OK,那么我在函数onMarkerDragEnd()上做一些事情,否则我想将标记移回原始位置。 我们该怎么做?谷歌地图v2标记拖放与提醒Android

回答

0

创建一个调用onMarkerDragEnd方法中的.show的标准警报对话框。在onMarkerDragStart中保存对对象位置的引用。例如:

LatLng markerOriginalPosition; 

public void onMarkerDragStart(Marker marker) { 
    markerOriginalPosition = marker.getPosition(); 
} 

public void onMarkerDragEnd(Marker marker) { 
dialog.show(); 

} 

public void dialogPositiveAction() { 
    // do nothing marker is already set 
} 

public void dialogNegativeAction() { 
    // set back to original position 
    mMarker.setPosition(markerOriginalPosition); 
} 

或者通过回调或动作,您可以设置当用户自己选择的将出现的积极和消极的行动。如果他们喜欢新的位置(积极的行动),那么就不要做任何事情,因为标记对象已经在那里。如果他们想将其返回到原始位置,请将其设置为原始位置LatLng。