로드뷰나 지적도편집도로 지도를 본 이후 일반 지도로 돌아 왔을 시 스카이뷰 작동하지 않는 문제

일반지도에서
로드뷰, 지적편집도, 일반지도 버튼이 있으며
기본 일반지도에서 로드뷰나, 지적편집도 본후 다시 일반지도를 보기 위해
일반지도 버튼을 클릭하면 일반지도로 변경되는데
여기서 스카이뷰 버튼을 클릭하면 아무작동도 하지 않습니다.
개발자도구에서 오류를 출력하지도 않구요
로드뷰나, 지적편집도 같은 다른타입의 지도를 본후 다시 일반지도로 돌아왔을때
스카이뷰 버튼을 클릭했을 시 스카이뷰가 정상적으로 출력되기 위해선 어떤부분을 추가 하거나 수정해야 하나요?

function setOverLay(type)//타입에 따른 지도 변화(버튼클릭시)

{

var mapType;

switch(type) {

	case 'roadview' :
		
		var center = map.getCenter();

		mapType = daum.maps.MapTypeId.ROADVIEW;

		

		var markImage = new daum.maps.MarkerImage(
				'http://t1.daumcdn.net/localimg/localimages/07/mapapidoc/roadview_wk.png',
				new daum.maps.Size(35,39),
				{
					offset:new daum.maps.Point(14,39)
				}
			);

		if(rvMarker != null)  {

			rvMarker.setMap(null);

		}

		rvMarker = new daum.maps.Marker({
			image:markImage,
			position:center,
			draggable:true,
			map:map
		});


		daum.maps.event.addListener(rvMarker, 'dragend',function(mouseEvent){

			var position =  rvMarker.getPosition();

			showRoadView(position);

		});
		

		break;

	case 'use_district' :

		if(rvMarker != null) {

			rvMarker.setMap(null);
		}
		mapType = daum.maps.MapTypeId.USE_DISTRICT;

		break;

        case 'roadmap' :

              if(rvMarker != null) {

                    rvMarker.setMap(null);
              }
              
              mapType = daum.maps.MapTypeId.ROADMAP;

              break;
}
  

if(currentType) {

	map.removeOverlayMapTypeId(currentType);

}

map.addOverlayMapTypeId(mapType);


currentType = mapType;

}

map.addOverlayMapTypeId()

이 함수는 현재 기본 지도 타입 위에 오버레이 지도를 올리는 기능을 합니다.

제가 추측하기에
현재 안 바뀌는 것 처럼 보이는 이유는

스카이뷰 버튼을 누를 상황에서는 밑에 깔린 기본 맵타입은 스카이뷰로 바뀌었지만
Roadmap을 위에 올려서 아래 깔린 맵타입이 보이지 않는 것이 아닐까 싶네요.

map.setMapTypeId()

를 사용하여 스카이뷰로 바꿔주시고

기존에 올린 모든 overlay layer는 삭제해주셔야 정상적으로 보일겁니다.

답변감사합니다.

다행히 올려주신 답변을 통해 해결하였습니다. 감사합니다^^

1개의 좋아요