0
버튼을 클릭하면 오버레이를 켜고 끕니다.Android MapView 오버레이 전환하기
List<Overlay> savedOverlays;
Button testButton;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
MapView mapView = (MapView) findViewById(R.id.mapview);
testButton = (Button) findViewById(R.id.TestButton);
testButton.setOnClickListener(testButtonClickListener);
mapView.setBuiltInZoomControls(true);
setOverlays(mapView);
}
private void setOverlays(MapView mapView) {
List<Overlay> mapOverlays = getOverlays(mapView);
Drawable drawable = this.getResources().getDrawable(R.drawable.androidmarker);
HelloItemizedOverlay itemizedoverlay = new HelloItemizedOverlay(drawable, this);
GeoPoint point = new GeoPoint(19240000,-99120000);
OverlayItem overlayitem = new OverlayItem(point, "Hola, Mundo!", "I'm in Mexico City!");
GeoPoint point2 = new GeoPoint(35410000, 139460000);
OverlayItem overlayitem2 = new OverlayItem(point2, "Sekai, konichiwa!", "I'm in Japan!");
itemizedoverlay.addOverlay(overlayitem);
itemizedoverlay.addOverlay(overlayitem2);
mapOverlays.add(itemizedoverlay);
}
private List<Overlay> getOverlays(MapView mapView) {
List<Overlay> mapOverlays = mapView.getOverlays();
return mapOverlays;
}
private void toggleOverlays(MapView mapView){
List<Overlay> mapOverlays = mapView.getOverlays();
if (mapOverlays.isEmpty())
{
setOverlays(mapView);
}
else
{
mapOverlays.removeAll(getOverlays(mapView));
}
}
private OnClickListener testButtonClickListener = new OnClickListener() {
public void onClick(View V){
toggleOverlays((MapView) findViewById(R.id.mapview));
}
};
이제 토글 오프 부분이 작동하지만 다시 가져 오지 않는 것 같습니다. 뭔가 빠졌습니까?