首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Android >

android调用百度map的有关问题,怎么在第一次显示当前位置

2012-09-23 
android调用百度地图的问题,如何在第一次显示当前位置Java code// 添加定位图层mLocationOverlay new My

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

Java code
// 添加定位图层        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));                    [color=#FF0000]// mMapView.getController().animateTo(pt);//[/color]                    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方法里面又会发生错误,请问要怎么解决??

[解决办法]
看百度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

Java code
// 初始化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);
[解决办法]
不行就加个变量,标记是否第一次吧,是就跳转然后改为“否”

热点排行