百度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)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 检测计算机命令,磁盘检测命令chkdsk的使用方法

    检测计算机命令,磁盘检测命令chkdsk的使用方法经常看到有很多朋友在系统开机的时候因系统自检程序时间过长而往往直接跳过磁盘检测 而直接跳过这种心急的想法有时候会引来大祸患 今天我们介绍的 chkdsk 命令是系统自带的系统修复命令 可以帮助我们解决很多常见问题 它可以帮助恢复系统文件 有时可以延缓硬盘的寿命 对此想要有了解的朋友跟随小编一起来看看吧 磁盘检测的原因多是由于系统检测到磁盘数据调用错误或者数据文件丢失而自发引起的一种自我保护措施 使用磁

    2025年6月19日
    5
  • 随机梯度下降优化算法_次梯度下降

    随机梯度下降优化算法_次梯度下降5、优化方法:随机梯度下降法5.1介绍在上衣章,我们介绍了图像分类任务中的两个关键部分:一个参数化的评分函数将原始图像像素映射到类得分(例如线性函数) 一个损失函数,它测量预测的分类得分与实际的分类之间的一致程度,来量化一组特定参数集的质量。我们看到有很多方法和版本(例如SoftMax、SVM)。回顾一下,线性评分函数是这样的:f(Xi,W)=WXi,SVM损失的公式为:…

    2025年10月21日
    3
  • Drone2Map:如何使用带有POS信息的无人机数据生成三维模型「建议收藏」

    Drone2Map:如何使用带有POS信息的无人机数据生成三维模型「建议收藏」使用Drone2Map生成slpk,将slpk加载至ArcGISPro中,slpk悬浮在空中。首先想到的是在pro中调整一下模型高度不就行了,遗憾的是slpk格式是压缩包,不支持模型高度的调整,所以,就必须追根溯源,考虑在Drone2Map生成三维模型的过程中如何解决此问题。 问题分析:一般用户拿到的无人机数据,基本分为两种,一种是无人机拍摄的照片自身带有xyz

    2022年8月15日
    6
  • swagger2 注解说明 ( @ApiImplicitParams )

    swagger2 注解说明 ( @ApiImplicitParams )Api 用在请求的类上 表示对类的说明 tags 说明该类的作用 可以在 UI 界面上看到的注解 value 该参数没什么意义 在 UI 界面上也看到 所以不需要配置 ApiOperation 用在请求的方法上 说明方法的用途 作用 value 说明方法的用途 作用 notes 方法的备注说明 ApiImplicitP 用在请求的方

    2025年11月27日
    5
  • petalinux简介_petalinux安装x11

    petalinux简介_petalinux安装x11前言PetalLinux是Xilinx公司推出的嵌入式Linux开发工具,专门针对Xilinx公司的FPGASoC芯片和开发板,用户可以在PetaLinux工…

    2025年11月2日
    4
  • 内网渗透系列:内网隧道之NATBypass[通俗易懂]

    内网渗透系列:内网隧道之NATBypass[通俗易懂]本文研究支持多协议双向代理的一个工具,NATBypass

    2022年10月18日
    3

发表回复

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

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