Android clear方法在google map api v2中不起作用
我刚刚开始学习android,我正在开发一个小应用程序,我在其中使用谷歌地图,所以我使用谷歌地图api v2 现在,当我运行我的应用程序时,我能够获取地图,找到我的位置并在该点添加一个标记,但当我试图删除该标记时,我无法删除它。我使用的是clear()方法。这是我的密码Android clear方法在google map api v2中不起作用,android,google-maps,google-maps-markers,Android,Google Maps,Google Maps Markers,我刚刚开始学习android,我正在开发一个小应用程序,我在其中使用谷歌地图,所以我使用谷歌地图api v2 现在,当我运行我的应用程序时,我能够获取地图,找到我的位置并在该点添加一个标记,但当我试图删除该标记时,我无法删除它。我使用的是clear()方法。这是我的密码 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); if(isG
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
if(isGooglePlayAvailable())
{
criteria=new Criteria();
setContentView(R.layout.mapdemo);
getGoogleMap();
getUserLocation();
//Toast.makeText(this, "Latitude:"+lat+" Longitude:"+lang, Toast.LENGTH_LONG).show();
getAddress(lat,lang);
drawMarker(lat,lang);
}
private void getUserLocation(){
location_manager=(LocationManager) getSystemService(LOCATION_SERVICE);
if(location_manager!=null){
provider=location_manager.getBestProvider(criteria, true);
location=location_manager.getLastKnownLocation(provider);
location_manager.requestLocationUpdates(provider, Map.MIN_TIME_BW_UPDATES, Map.MIN_DISTANCE_CHANGE_FOR_UPDATES, this);
lat=location.getLatitude();
lang=location.getLongitude();
}
}
@Override
public void onLocationChanged(Location location) {
drawMarker(lat, lang);
}
private void drawMarker(double lattitude,double longitude){
google_map.clear();
google_map.setMyLocationEnabled(true);
LatLng latlng=new LatLng(lattitude, longitude);
google_map.moveCamera(CameraUpdateFactory.newLatLng(latlng));
google_map.animateCamera(CameraUpdateFactory.zoomTo(15));
LatLng currentPosition = new LatLng(lattitude,longitude);
google_map.addMarker(new MarkerOptions().position(currentPosition).snippet("Address:" + addresses.get(0).getAddressLine(0) + "City:"+ addresses.get(0).getAddressLine(1)+"Country:"+addresses.get(0).getAddressLine(2)).icon(BitmapDescriptorFactory.defaultMarker(BitmapDescriptorFactory.HUE_RED)).title("ME"));
}
我还提到了以下链接
这里我没有发布完整的代码,因为一切正常。我想做的是删除当前标记并添加必须使用drawmarker()函数添加的新标记。在调用位置更改后,您是否看到多个标记?@SteveBenett不,我认为理想情况下也必须这样做。