http://developer.baidu.com/map/index.php?title=androidsdk


实现一个具有动画效果的标注覆盖物:


MainActivity.java

package com.example.hellobdmap;import java.util.ArrayList;import android.app.Activity;import android.os.Bundle;import android.util.Log;import com.baidu.mapapi.SDKInitializer;import com.baidu.mapapi.map.BaiduMap;import com.baidu.mapapi.map.BaiduMap.OnMarkerDragListener;import com.baidu.mapapi.map.BitmapDescriptor;import com.baidu.mapapi.map.BitmapDescriptorFactory;import com.baidu.mapapi.map.MapView;import com.baidu.mapapi.map.Marker;import com.baidu.mapapi.map.MarkerOptions;import com.baidu.mapapi.map.OverlayOptions;import com.baidu.mapapi.model.LatLng;public class MainActivity extends Activity {protected static final String TAG = "MainActivity";MapView mMapView = null;private BaiduMap mBaiduMap;    @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);                mBaiduMap = mMapView.getMap();        // 百度地图Android SDK为您提供了两种类型的地图资源(普通矢量地图和卫星图),开发者可以利用BaiduMap中的mapType()方法来设置地图类型。        // 普通地图          mBaiduMap.setMapType(BaiduMap.MAP_TYPE_NORMAL);          // 卫星地图          // mBaiduMap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);        // 当前,全国范围内已支持多个城市实时路况查询,且会陆续开通其他城市。        // 在地图上打开实时路况的核心代码如下        mBaiduMap.setTrafficEnabled(true);        // 在地图上开启百度城市热力图的核心代码        mBaiduMap.setBaiduHeatMapEnabled(true);                // 标注覆盖物        setOverLay();    }        private void setOverLay() {    // 定义Maker坐标点      LatLng point = new LatLng(39.963175, 116.400244);      // 构建Marker图标   具有动画效果的标注覆盖物    // 自v3.3.0版本起,SDK提供了给Marker增加动画的能力    BitmapDescriptor bitmapa = BitmapDescriptorFactory.fromResource(R.drawable.icon_marka);    BitmapDescriptor bitmapb = BitmapDescriptorFactory.fromResource(R.drawable.icon_markb);    BitmapDescriptor bitmapc = BitmapDescriptorFactory.fromResource(R.drawable.icon_markc);    BitmapDescriptor bitmapd = BitmapDescriptorFactory.fromResource(R.drawable.icon_markd);    BitmapDescriptor bitmape = BitmapDescriptorFactory.fromResource(R.drawable.icon_marke);    BitmapDescriptor bitmapf = BitmapDescriptorFactory.fromResource(R.drawable.icon_markf);    BitmapDescriptor bitmapg = BitmapDescriptorFactory.fromResource(R.drawable.icon_markg);    // 通过marker的icons设置一组图片,再通过period设置多少帧刷新一次图片资源    ArrayList<BitmapDescriptor> bitmaps = new ArrayList<BitmapDescriptor>();    bitmaps.add(bitmapa);    bitmaps.add(bitmapb);    bitmaps.add(bitmapc);    bitmaps.add(bitmapd);    bitmaps.add(bitmape);    bitmaps.add(bitmapf);    bitmaps.add(bitmapg);    // 构建MarkerOption,用于在地图上添加Marker     OverlayOptions options = new MarkerOptions()        .position(point)  //设置marker的位置        .icons(bitmaps)  //设置marker图标        .zIndex(9) // 设置marker所在层级        .period(3) // 设置动画时间        .draggable(true);  //设置手势拖拽    // 在地图上添加Marker,并显示      Marker marker = (Marker) (mBaiduMap.addOverlay(options));}@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();      }}

activity_main.xml


<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:layout_width="match_parent"    android:layout_height="match_parent"    tools:context="com.example.hellobdmap.MainActivity" >    <com.baidu.mapapi.map.MapView      android:id="@+id/bmapView"      android:layout_width="fill_parent"      android:layout_height="fill_parent"      android:clickable="true" /></RelativeLayout>

附完整源代码:

http://download.csdn.net/detail/wang725/8827617



更多相关文章

  1. Android(安卓)解决阿里云直播水印问题
  2. android 跳转到小米手机神隐模式
  3. Android本地图片压缩+转base64
  4. Android(安卓)Post Get 示例
  5. android 代码中设置字体大小
  6. android View根据自己获取焦点的情况执行语句
  7. google地图demo
  8. Android(安卓)NDK编译时出现的问题以及解决办法
  9. 第一章:初入Android大门(程序加载应用)

随机推荐

  1. Consider adding android:paddingStart=
  2. Android开发资料视频教程(光盘6.2G)
  3. android集成百度地图SDK 自定义keystore
  4. 接收短信启动相应服务
  5. Android(安卓)SQLite是线程安全的吗?
  6. Android(安卓)app内部下载安装
  7. android init 进程分析
  8. Android(安卓)源码下载
  9. android EditText 添加图片表情以及在四
  10. Android环境SDK搭建问题