百度map android sdk3.5实现定位 并跳转的指定坐标,加入标记

百度map android sdk3.5实现定位 并跳转的指定坐标,加入标记

大家好,又见面了,我是全栈君。

前几天又下载了新的百度地图sdk,3.5版本号。发现百度地图api有了较大变化

定位和3.0版本号差点儿相同

可是设置地图中心和加入maker标记有较大变化

设置地图中心点

// 定义地图状态zoom表示缩放级别3-18
MapStatus mMapStatus = new MapStatus.Builder().target(cenpt)
.zoom(14).build();
// 定义MapStatusUpdate对象。以便描写叙述地图状态将要发生的变化
MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory
.newMapStatus(mMapStatus);
// 改变地图状态
// 开启定位图层
mMapView.getMap().setMapStatus(mMapStatusUpdate);

加入maker标记

// 定义Maker坐标点
// 构建Marker图标
BitmapDescriptor bitmap = BitmapDescriptorFactory
.fromResource(R.drawable.ic_launcher);
// 构建MarkerOption,用于在地图上加入Marker
OverlayOptions option = new MarkerOptions().position(cenpt).icon(
bitmap);
// 在地图上加入Marker,并显示
mMapView.getMap().clear();
mMapView.getMap().addOverlay(option);
mLocationClient.stop();

完整代码例如以下

public class MapActivity extends BaseActivity {
MapView mMapView;

public LocationClient mLocationClient = null;
public BDLocationListener myListener = new MyLocationListener();

@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
SDKInitializer.initialize(getApplicationContext());
setContentView(R.layout.activity_mapview);
mMapView = (MapView) findViewById(R.id.bmapView);

mLocationClient = new LocationClient(getApplicationContext()); // 声明LocationClient类
mLocationClient.registerLocationListener(myListener); // 注冊监听函数
mLocationClient.start();
}

@Override
protected void onDestroy() {
super.onDestroy();
// 在activity运行onDestroy时运行mMapView.onDestroy()。实现地图生命周期管理
mMapView.onDestroy();
mLocationClient.stop();
}

@Override
protected void onResume() {
super.onResume();
// 在activity运行onResume时运行mMapView. onResume ()。实现地图生命周期管理
mMapView.onResume();
}

@Override
protected void onPause() {
super.onPause();
// 在activity运行onPause时运行mMapView. onPause (),实现地图生命周期管理
mMapView.onPause();
}

public class MyLocationListener implements BDLocationListener {
@Override
public void onReceiveLocation(BDLocation location) {
if (location == null)
return;
StringBuffer sb = new StringBuffer(256);
sb.append(“time : “);
sb.append(location.getTime());
sb.append(“\nerror code : “);
sb.append(location.getLocType());
sb.append(“\nlatitude : “);
sb.append(location.getLatitude());
sb.append(“\nlontitude : “);
sb.append(location.getLongitude());
sb.append(“\nradius : “);
sb.append(location.getRadius());
if (location.getLocType() == BDLocation.TypeGpsLocation) {
sb.append(“\nspeed : “);
sb.append(location.getSpeed());
sb.append(“\nsatellite : “);
sb.append(location.getSatelliteNumber());
} else if (location.getLocType() == BDLocation.TypeNetWorkLocation) {
sb.append(“\naddr : “);
sb.append(location.getAddrStr());
}
System.out.println(“” + sb.toString());
LatLng cenpt = new LatLng(location.getLatitude(),
location.getLongitude());
// 定义地图状态zoom表示缩放级别3-18
MapStatus mMapStatus = new MapStatus.Builder().target(cenpt)
.zoom(14).build();
// 定义MapStatusUpdate对象,以便描写叙述地图状态将要发生的变化
MapStatusUpdate mMapStatusUpdate = MapStatusUpdateFactory
.newMapStatus(mMapStatus);
// 改变地图状态
// 开启定位图层
mMapView.getMap().setMapStatus(mMapStatusUpdate);



// 定义Maker坐标点
// 构建Marker图标
BitmapDescriptor bitmap = BitmapDescriptorFactory
.fromResource(R.drawable.ic_launcher);
// 构建MarkerOption。用于在地图上加入Marker
OverlayOptions option = new MarkerOptions().position(cenpt).icon(
bitmap);
// 在地图上加入Marker,并显示
mMapView.getMap().clear();
mMapView.getMap().addOverlay(option);
mLocationClient.stop();
}
}

}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/116512.html原文链接:https://javaforall.net

(0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • maven快照更新策略_eclipse更新maven包

    maven快照更新策略_eclipse更新maven包1、为什么会有快照?开发中,A项目依赖于项目B,没有快照时,B每次改动我们就需要赋予给他一个新版本号,然后在A的pom.xml中修改B的版本,这不仅浪费版本号,而且会带来很多的沟通成本。快照就是为了解决这个问题而生的,每次B发布到私服,maven都会将B打上时间戳,A更新时会检查B的时间戳,如果晚于本地仓库B的时间戳,那么就会进行更新。2、快照更新策略注意,快照并不是每次ins

    2022年10月4日
    0
  • GSLB相关知识点

    GSLB相关知识点摘要GSLB是GlobalServerLoadBalance的缩写,即全局负载均衡。本文首先介绍了什么是负载均衡SLB,以及为什么要使用SLB。接着引出全局负载均衡GSLB的概念和作用。为此介绍了其基于DNS进行解析和分配负载的实现,包括DNS的原理简介、应用部署中的基本概念、分配负载的决策条件等内容。以外,本文还简单介绍了通过HTTP和IP…

    2022年6月13日
    41
  • 【Activity】Activity的启动模式:SingleTask

    【Activity】Activity的启动模式:SingleTask目录1.概述2.详细过程2.1启动MainActivity2.1.1生命周期2.1.2Activity栈2.2MainActivity中启动SecondActivity2.2.1生命周期2.2.2Activity栈2.3SecondActivity中启动MainActivity2.3.1生命周期2.3.2Activity栈2.4…

    2022年6月26日
    27
  • 防暴力激活成功教程密码的脚本「建议收藏」

    防暴力激活成功教程密码的脚本「建议收藏」前几天,突然发现日志文件/var/log/auth.log(ubuntu)或者/var/log/secure(centos),存在好多尝试激活成功教程用户密码的现象,如下脚本通过获取到日志文件的IP地址,加入到/etc/hosts.deny文件中,拒绝该IP地址的尝试登陆服务器。#1.定义变量,获取日志中刷选的IP地址DIR_file=/var/log/auth.logIP_list=`awk’/…

    2022年8月22日
    3
  • 1 RRC 常用名词解释「建议收藏」

    1 RRC 常用名词解释「建议收藏」常用名词解释1.RRC无线资源控制(RadioResourceControl,RRC),又称为无线资源管理(RRM)或者无线资源分配(RRA),是指通过一定的策略和手段进行无线资源管理、控制和调度,在满足服务质量的要求下,尽可能地充分利用有限的无线网络资源,确保到达规划的覆盖区域,尽可能地提高业务容量和资源利用率2.MCG、SCG、PCell,PSCell,SCell和sPCell这些是NSA双链接(DC,Dualconnectivity)下的概念MCG:MasterCellgr

    2022年9月25日
    2
  • 北京异地居住证怎么办理(半异地居住证手续)

    让开,让我来,现在的回答都太远古了!我来给大家分享下流程:异地办理护照提供材料1、按居住证类型预约身份证(原件及复印件)+居住证(原件及复印件)2、按就业人员类型预约身份证+户口本+暂住证(工作居住证)或居住证身份证需正反面复印+户口本首页+本人页+暂住证或工作居住证复印有效期页的所有信息页3、按非本市配偶类型预约身份证+户口本+结婚证+配偶一方的户口本的复印件…

    2022年4月11日
    100

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号