百度地图最新版本sdk使用系列(四)-开启卫星地图,实时交通图,实现标注覆盖物等功能

废话不多说,详细看注释,具体代码如下:

“`
Public class MainActivity extends Activity {
private static final String TAG = “MainActivity”;
private MapView mMapView;// 地图视图
private BaiduMap mBaiduMap;//地图控制器
private MapStatus mMapStatus;//地图当前状态
private MapStatusUpdate mMapStatusUpdate;//地图将要变化成的状态
private LatLng ll=new LatLng(31.192769,120.942034);//经纬度坐标

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // 在使用SDK各组件之前初始化context信息,传入ApplicationContext
    // 该方法要在setContentView方法之前实现
    SDKInitializer.initialize(getApplicationContext());
    setContentView(R.layout.activity_main);     
    init();
    //获得地图的当前状态的信息
    mMapStatus=new MapStatus.Builder().zoom(18).target(ll).build();
    //设置地图将要变成的状态
    mMapStatusUpdate = MapStatusUpdateFactory.newMapStatus(mMapStatus);
    //设置地图的变化
    mBaiduMap.setMapStatus(mMapStatusUpdate);       

        mBaiduMap.setOnMarkerClickListener(new OnMarkerClickListener() {

        @Override
        public boolean onMarkerClick(Marker marker) {
            //创建InfoWindow展示的view  
            TextView tv = new TextView(getApplicationContext());
            tv.setTextColor(0xff000000);
            tv.setText("test");
            tv.setBackgroundResource(R.drawable.popup);  
            //创建InfoWindow , 传入 view, 地理坐标, y 轴偏移量 
            InfoWindow mInfoWindow = new InfoWindow(tv, ll, -100);  
            //显示InfoWindow  
            mBaiduMap.showInfoWindow(mInfoWindow);
            return true;
        }
    });
}
private void init() {       
    // 获得地图控件引用
    mMapView = (MapView) findViewById(R.id.bmapView);
    //获得地图控制器(组合)
    mBaiduMap=mMapView.getMap();//MapView与BaiduMap一一对应      
    //测试用button
    Button btn_test = (Button) findViewById(R.id.test);
    btn_test.setOnClickListener(new OnClickListener() {
        @Override
        public void onClick(View v) {   
            mBaiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);//开启卫星图
            mBaiduMap.setTrafficEnabled(true);//开启实时交通图
            //定义Maker坐标点  
            LatLng point = new LatLng(31.192769,120.942034);  
            //构建Marker图标  
            BitmapDescriptor bitmap = BitmapDescriptorFactory  
                .fromResource(R.drawable.ic_launcher);  
            //构建MarkerOption,用于在地图上添加Marker  
            MarkerOptions markerOptions = new MarkerOptions()  
                .position(point)//设置marker所在位置
                .icon(bitmap);//设置marker图标
            mBaiduMap.addOverlay(markerOptions);

        }
    });
}

@Override
protected void onDestroy() {
    super.onDestroy();
    mMapView.onDestroy();
}

@Override
protected void onResume() {
    super.onResume();
    mMapView.onResume();
}
@Override
protected void onPause() {
    super.onPause();
    mMapView.onPause();
}

}

*此demo已上传csdn,下载地址为:
http://download.csdn.net/detail/csdn1027719307/8700107*

你可能感兴趣的:(Android开发,百度地图)