如何在一个Activity上制作2个MapView?

时间:2010-01-07 07:44:59

标签: android

是否可以在一个Activity上制作2个MapView?

如果是的话,如何制作?

我试过但没有运气。

提前致谢。

2 个答案:

答案 0 :(得分:4)

简短的回答是

目前,Android每个MapActivity仅支持一个MapView。

答案 1 :(得分:0)

是的可能,我将此代码用于两种不同类型的地图------ 1。获取gps位置------ 2。用于按区域/城市/国家/地区名称搜索某个位置。代码是,

    public void mapDisplay(double lat, double lng, int arg){

        if(arg == 1){
            mapView = (MapView)findViewById(R.id.map_view);
        }
        else if (arg ==2 ){
            mapView = (MapView)findViewById(R.id.map_view2);

        }

        mapView.setBuiltInZoomControls(true);

        //mapView.setStreetView(true);
        //mapView.setTraffic(true);
        //mapView.setSatellite(true);

        // to display the pin point
        List<Overlay> mapOverlays = mapView.getOverlays();
        Drawable drawable = this.getResources().getDrawable(R.drawable.icon);
        CustomItemizedOverlay itemizedOverlay = new CustomItemizedOverlay(drawable, this);

        GeoPoint point = new GeoPoint((int) (lat * 1E6), (int)(lng * 1E6));

        OverlayItem overlayitem = new OverlayItem(point, "", "");
        itemizedOverlay.addOverlay(overlayitem);
        mapOverlays.add(itemizedOverlay);

        mapView.getController().setZoom(18);
        mapView.getController().setCenter(point);
        mapView.getController().animateTo(point);

        mapView.invalidate();

 }

注意:确保在调用此方法之前设置了ContentViews,并且

  

int arg

用于表示将调用哪个mapView .....我使用