public void GetLocations() {
  if (myLocation != null) {
   latPoint = myLocation.getLatitude();
   lngPoint = myLocation.getLongitude();
   speed = (float)(myLocation.getSpeed() * 3.6);
  }
  GeoPoint gp = new GeoPoint((int)(latPoint * 1E6),(int)(lngPoint * 1E6));
  controller.animateTo(gp);
  curLocation = myLocation;
  String strloc = String.format("위도:%f, 경도:%f", (float)latPoint, (float)lngPoint);
  setOverlay(gp, strloc); 
 }

 

 public void setOverlay(GeoPoint p, String addr) {
  Bitmap icon = BitmapFactory.decodeResource(getResources(),R.drawable.green_dot);
  IconOverlay overlay = new IconOverlay(icon, p, addr);
  List<Overlay> overlays = mapView.getOverlays();
  overlays.clear();      // 위치가 이동되면 기존 overlay 정보는 제거
  overlays.add(overlay);
 }

 

public void GeoPointSU() {
  GeoPoint SN = new GeoPoint(37566535, 126977969); 
  MapController mc=mapView.getController();       
  mc.animateTo(SN);
  mc.setZoom(17);

  mapOverlays = mapView.getOverlays();
  drawable = this.getResources().getDrawable(R.drawable.red_dot);
  itemizedOverlay = new MyItemizedOverlay(drawable);

  OverlayItem overlayitemSN = new OverlayItem(SN, "", "");
  
  itemizedOverlay.addOverlay(overlayitemSN);
  mapOverlays.add(itemizedOverlay);
 }

 

현재 맵 상에 GetLocations() 현재의 위치를 계속적으로 찍어줍니다.

그러면서 소스상에서 clear() 를 하기때문에 새롭게 위치를 찍어주죠...

질문드립니다.

 GeoPointSU() 서울 좌표처럼 고정된 값도 맵 상에 나타내고 있는데요...

위에서 onLocationChanged(Location location) 할 때마다 현재 위치를 새롭게 찍다보니...

고정된 서울값도 같이 사라져 버립니다.

현재 위치를 매초마다 계속해서 바뀌다 보니...

아예 고정위치 표시는 나타나지를 않습니다.

clear() 메소드를 어떻게 사용해야 될까요???