android调用百度地图的问题,如何在第一次显示当前位置

到处都要注册额 2012-08-15 10:46:50

// 添加定位图层
mLocationOverlay = new MyLocationOverlay(this, mMapView);
mMapView.getOverlays().add(mLocationOverlay);
public void onLocationChanged(Location location) {
if (location != null) {
pt = new GeoPoint((int) (location.getLatitude() * 1e6),
(int) (location.getLongitude() * 1e6));
// mMapView.getController().animateTo(pt);//

mark = 0;// 本地标记
mSearch.reverseGeocode(pt);// ni地址解析
Toast.makeText(paisong2.this, "本地移动onlocation",
Toast.LENGTH_LONG).show();
upload(pt);
}
}


mMapView.getController().animateTo(pt);这一句加在onLocationChanged里面的话,以后每次一移动地图就跑到当前位置了,可是我只想第一次显示并移动到当前位置?
mMapView.getController().animateTo(pt);加在oncreate方法里面又会发生错误,请问要怎么解决??
...全文
3067 4 打赏 收藏 转发到动态 举报
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
zxc2123 2013-06-06
  • 打赏
  • 举报
回复
设置一下中心点
AMinfo 2012-08-15
  • 打赏
  • 举报
回复
看百度API说明:

当前位置:MyLocationOverlay

http://dev.baidu.com/wiki/imap/index.php?title=Android%E5%B9%B3%E5%8F%B0/%E5%BC%80%E5%8F%91%E6%8C%87%E5%8D%97#.E5.BD.93.E5.89.8D.E4.BD.8D.E7.BD.AE.EF.BC.9AMyLocationOverlay


// 初始化Location模块
mLocationManager = mBMapMan.getLocationManager();
// 通过enableProvider和disableProvider方法,选择定位的Provider
// mLocationManager.enableProvider(MKLocationManager.MK_NETWORK_PROVIDER);
// mLocationManager.disableProvider(MKLocationManager.MK_GPS_PROVIDER);
// 添加定位图层
MyLocationOverlay mylocTest = new MyLocationOverlay(this, mMapView);
mylocTest.enableMyLocation(); // 启用定位
mylocTest.enableCompass(); // 启用指南针
mMapView.getOverlays().add(mylocTest);
zyxel60b 2012-08-15
  • 打赏
  • 举报
回复
不行就加个变量,标记是否第一次吧,是就跳转然后改为“否”
  • 打赏
  • 举报
回复
楼上的这样只能标识本地位置,不能跳啊。如果在onLocationChanged里面加上 mMapView.getController().animateTo(pt);才能跳转,但是这样每次都会跳转,我只想第一次跳转啊,为什么这句话加到oncreate方法里面会出错,求解!!

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧