【问题标题】:How to to make 2 MapView on one Activity?如何在一个 Activity 上制作 2 个 MapView?
【发布时间】:2013-01-08 21:44:52
【问题描述】:

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

如果可以,如何制作?

我试过了,但没有成功。

提前致谢。

【问题讨论】:

    标签: android


    【解决方案1】:

    简短的回答是

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

    【讨论】:

    【解决方案2】:

    是的,我将这段代码用于两种不同的地图------ 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 参数

    这里用来表示要调用哪个mapView.....我用过

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-01-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-04-15
      • 2021-12-25
      • 1970-01-01
      相关资源
      最近更新 更多