百度地图三模拟切换源码
public class MainActivity extends Activity {
private MapView mapView; //地图视图
private BaiduMap baiduMap; //百度地图
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
requestWindowFeature(Window.FEATURE_NO_TITLE); //全屏显示
SDKInitializer.initialize(getApplicationContext()); //SDK初始化前引入全局变量
setContentView(R.layout.activity_main);
initview();
}
//【得到地图组件的方法】
private void initview() {
mapView=(MapView) findViewById(R.id.w_baidu);
baiduMap=mapView.getMap(); //从地图视图中得到百度地图
MapStatusUpdate factory=MapStatusUpdateFactory.zoomTo(5.0f); //设置缩放比例
baiduMap.setMapStatus(factory); //比例设置到百度地图中
}
//【地图的三种模式】
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
switch (item.getItemId()) {
case R.id.item_1:
baiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL); //普通地图
break;
case R.id.item_2:
baiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE); //卫星地图
break;
case R.id.item_3: //实时交通
if(baiduMap.isTrafficEnabled()){
baiduMap.setTrafficEnabled(false);
item.setTitle("实时交通OFF");
}else{
baiduMap.setTrafficEnabled(true);
item.setTitle("实时交通ON");
}
break;
}
return super.onOptionsItemSelected(item);
}
@Override//【销毁方法】
protected void onDestroy() {
super.onDestroy();
mapView.onDestroy();
}
@Override//【暂停方法】
protected void onPause() {
super.onPause();
mapView.onDestroy();
}
@Override//【运行方法】
protected void onResume() {
super.onResume();
mapView.onResume();
}
}