How does one implement drag and drop for Android marker?

前端 未结 6 1227
终归单人心
终归单人心 2020-11-29 23:20

Hi? I am working on a MapView app in Android. I have three markers that I want to be able to use the Google Map API getlocation-function on, later on. In order to try it out

6条回答
  •  再見小時候
    2020-11-29 23:54

    Implement Google Maps Android API v2, refer this: https://developers.google.com/maps/documentation/android/ and set on GoogleMap object setOnMarkerDragListener. For Ex:

    map.setOnMarkerDragListener(new OnMarkerDragListener() {
            @Override
            public void onMarkerDragStart(Marker arg0) {
                // TODO Auto-generated method stub
                Log.d("System out", "onMarkerDragStart..."+arg0.getPosition().latitude+"..."+arg0.getPosition().longitude);
            }
    
            @SuppressWarnings("unchecked")
            @Override
            public void onMarkerDragEnd(Marker arg0) {
                // TODO Auto-generated method stub
                Log.d("System out", "onMarkerDragEnd..."+arg0.getPosition().latitude+"..."+arg0.getPosition().longitude);
    
                map.animateCamera(CameraUpdateFactory.newLatLng(arg0.getPosition()));
            }
    
            @Override
            public void onMarkerDrag(Marker arg0) {
                // TODO Auto-generated method stub
                Log.i("System out", "onMarkerDrag...");
            }
        });
    
    //Don't forget to Set draggable(true) to marker, if this not set marker does not drag.
    
    map.addMarker(new MarkerOptions()
        .position(crntLocationLatLng)
        .icon(BitmapDescriptorFactory.fromResource(R.drawable.icon_my_location))
        .draggable(true));
    

提交回复
热议问题