Android 百度地图(二)——地图切换、定位、添加覆盖物、搜索位置、连线

本文详细介绍了如何在Android应用中使用百度地图API实现地图切换、定位、添加覆盖物、搜索位置和连线等功能。地图切换包括普通地图、卫星地图和交通地图的切换。定位功能涉及LocationClient和BDLocationListener接口的使用。同时,文章展示了如何添加标记以显示定位位置,以及使用GeoCoder进行位置搜索。最后,文章讨论了如何绘制地图上的连线,以连接不同地理位置的点。
摘要由CSDN通过智能技术生成

  在 Android 百度地图(一)——简单使用 博客中简单介绍了它的使用,基本上都是按照百度API所给的介绍进行操作的,只是初步地让百度地图显示在应用中,并没有具体的使用或是操作它,我们平时所看到的地图都是可以定位、查询的,那么怎样实现地图的切换、定位、与连线呢?

一、地图切换  

  先来看下上次的代码,没错上次的代码就是跟百度API中写的一模一样,其实使用第三方的开源控件就是这样的,就是查看它的开发指南和Demo学习并使用。
上次代码

public class MainActivity extends Activity {
     
    MapView mMapView = null;  
    @Override  
    protected void onCreate(Bundle savedInstanceState) {  
        super.onCreate(savedInstanceState);   
        //在使用SDK各组件之前初始化context信息,传入ApplicationContext  
        //注意该方法要再setContentView方法之前实现  
        SDKInitializer.initialize(getApplicationContext());  
        setContentView(R.layout.activity_main);  
        //获取地图控件引用  
        mMapView = (MapView) findViewById(R.id.bmapView);  
    }  
    @Override  
    protected void onDestroy() {  
        super.onDestroy();  
        //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理  
        mMapView.onDestroy();  
    }  
    @Override  
    protected void onResume() {  
        super.onResume();  
        //在activity执行onResume时执行mMapView. onResume (),实现地图生命周期管理  
        mMapView.onResume();  
        }  
    @Override  
    protected void onPause() {  
        super.onPause();  
        //在activity执行onPause时执行mMapView. onPause (),实现地图生命周期管理  
        mMapView.onPause();  
        }  
    }

  我们的地图有三种:普通地图、卫星地图、交通地图;现在为了实现地图的切换
  1、在菜单项中添加三个item。
这里写图片描述

<item
        android:id="@+id/menu_normal"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="普通模式"/>
<item
        android:id="@+id/menu_site"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="卫星图"/>
<item
        android:id="@+id/menu_traffic"
        android:orderInCategory="100"
        android:showAsAction="never"
        android:title="实时交通(off)"/>

2、在MainActivity中获得一个Baidumap,mBaiduMap = mapview.getMap();,通过Baidumap切换地图类型。

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.activity_main, menu);
        
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值