mc-第1章 位置服务与地图应用.ppt

mc-第1章位置服务与地图应用要点

Android架构 1.3.4 Android定位SDKv5.1 * * 1.3.3基础地图 (2)实时交通图 运行程序,即可在您的应用中显示地图,如图9-5所示,其中红色代表“拥挤”,黄色代表“缓行”,绿色代表“畅通”。 1.3.3基础地图 (3)百度城市热力图 百度地图SDK继为广大开发者开放热力图本地绘制能力之后,再次进一步开放百度自有数据的城市热力图层,帮助开发者构建形式更加多样的移动端应用。百度城市热力图的性质及使用与实时交通图类似,只需要简单的接口调用,即可在地图上展现样式丰富的百度城市热力图。在地图上开启百度城市热力图的核心代码如下: 1. mMapView = (MapView) findViewById(R.id.bmapView); 2. mBaiduMap = mMapView.getMap(); 3. //开启百度城市热力图 4. mBaiduMap.setBaiduHeatMapEnabled(true); 1.3.3基础地图 (3)百度城市热力图 运行程序,即可在您的应用中显示地图,如图9-6所示,其中“非常舒适”表示少于10人/100m2,“舒适”表示10-20人/100m2,“一般”表示20-40人/100m2,“拥挤”表示40-60人/100m2,“非常拥挤”表示大于60人/100m2。 1.3.3基础地图 (4)标注覆盖物 开发者可根据自己实际的业务需求,利用标注覆盖物,在地图指定的位置上添加标注信息。具体实现方法如下: 1. //定义Maker坐标点 2. LatLng point = new LatLng(45.718484, 126.647336); 3. //构建Marker图标 4. BitmapDescriptor bitmap = BitmapDescriptorFactory.fromResource(R.drawable.icon_marka); 5. //构建MarkerOption,用于在地图上添加Marker 6. OverlayOptions option = new MarkerOptions().position(point).icon(bitmap); 7. //在地图上添加Marker,并显示 8. mBaiduMap.addOverlay(option); 1.3.3基础地图 (4)标注覆盖物 开发者可根据自己实际的业务需求,利用标注覆盖物,在地图指定的位置上添加标注信息。具体实现方法如下: 1.3.3基础地图 (4)标注覆盖物 针对已经添加在地图上的标注,可采用如下方式进行手势拖拽: 第一步,设置可拖拽: 在上述代码中,第2行中参数llA和第3行中参数bdA均需要在前面通过以下语句进行声明: 1. LatLng llA = new LatLng(39.963175, 116.400244); 2. BitmapDescriptor bdA = BitmapDescriptorFactory.fromResource(R.drawable.icon_marka); 1. OverlayOptions options = new MarkerOptions() 2. .position(llA) //设置marker的位置 3. .icon(bdA) //设置marker图标 4. .zIndex(9) //设置marker所在层级 5. .draggable(true); //设置手势拖拽 6. //将marker添加到地图上 7. marker = (Marker) (mBaiduMap.addOverlay(options)); 1.3.3基础地图 (4)标注覆盖物 第二步,设置监听方法: 1. //调用BaiduMap对象的setOnMarkerDragListener方法设置marker拖拽的监听 2. mBaiduMap.setOnMarkerDragListener(new OnMarkerDragListener() { 3. public void onMarkerDrag(Marker marker) { 4. //拖拽中 5. } 6. public void onMarkerDragEnd(Marker marker) { 7. //拖拽结束 8. Toast.makeText( 9. MainActivity.this, 10. 拖拽结束,新位置: + marker.getPosition().latitude + , 11. + m

文档评论(0)

1亿VIP精品文档

相关文档