为了账号安全,请及时绑定邮箱和手机立即绑定

百度地图定位自己的坐标后显示空白

百度地图定位自己的坐标后显示空白

用户1141250 2015-04-28 22:02:23
public class MainActivity extends Activity {  MapView mMapView = null;    BaiduMap bmap = null;  Boolean traffic= false;    LocationClient lclient;  Boolean first_post = true;  Context thiscontext =null;     @Override       protected void onCreate(Bundle savedInstanceState) {           super.onCreate(savedInstanceState);            requestWindowFeature(Window.FEATURE_NO_TITLE);         SDKInitializer.initialize(getApplicationContext());           setContentView(R.layout.activity_main);                    thiscontext=this;         mMapView = (MapView) findViewById(R.id.bmapView);           MapStatusUpdate mfactory = MapStatusUpdateFactory.zoomTo(15.0f);         bmap=mMapView.getMap();         bmap.setMapStatus(mfactory);                  LocationMothod();     }            @Override  protected void onStart() {   super.onStart();   bmap.setMyLocationEnabled(true);   if(!lclient.isStarted())   lclient.start();  }  @Override  protected void onStop() {   super.onStop();   bmap.setMyLocationEnabled(false);   lclient.stop();  }  @Override       protected void onDestroy() {           super.onDestroy();           //在activity执行onDestroy时执行mMapView.onDestroy(),实现地图生命周期管理           mMapView.onDestroy();       }       @Override       protected void onResume() {           super.onResume();           mMapView.onResume();           }       @Override       protected void onPause() {           super.onPause();           mMapView.onPause();           }  @Override  public boolean onCreateOptionsMenu(Menu menu) {   getMenuInflater().inflate(R.menu.main, menu);   return super.onCreateOptionsMenu(menu);  }    public void LocationMothod(){   lclient=new LocationClient(this);   lclient.registerLocationListener(new MyListener());   LocationClientOption lcOption=new LocationClientOption();   lcOption.setCoorType("bd09ll");   lcOption.setIsNeedAddress(true);   lcOption.setOpenGps(true);   lcOption.setScanSpan(1000);   lclient.setLocOption(lcOption);  }    @Override  public boolean onOptionsItemSelected(MenuItem item) {      switch(item.getItemId()){   case R.id.pmap:    bmap.setMapType(BaiduMap.MAP_TYPE_NORMAL);    break;   case R.id.wmap:    bmap.setMapType(BaiduMap.MAP_TYPE_SATELLITE);    break;   case R.id.tmap:    if(!traffic){//如果是关闭状态     bmap.setTrafficEnabled(true);     traffic=true;    }else{//如果是打开状态     bmap.setTrafficEnabled(false);     traffic=false;    }    break;   }   return super.onOptionsItemSelected(item);  }        class MyListener implements BDLocationListener{  @Override  public void onReceiveLocation(BDLocation arg0) {      MyLocationData mlData = new MyLocationData.Builder()                           .accuracy(arg0.getRadius())                           .latitude(arg0.getLatitude())                           .longitude(arg0.getLongitude())                           .build();   bmap.setMyLocationData(mlData);   if(first_post){    LatLng llng=new LatLng(arg0.getLatitude(), arg0.getLongitude());    MapStatusUpdate msu = MapStatusUpdateFactory.newLatLng(llng);    bmap.animateMapStatus(msu);    //first_post=false;    Toast.makeText(thiscontext, arg0.getLatitude()+"---"+arg0.getLongitude(), Toast.LENGTH_SHORT).show();   }  } }}不能定位自己的坐标地图,显示空白中间有一个位置原点,Toast打印出:4.9E-324---4.9E-324。
查看完整描述

4 回答

?
tzm1513

TA贡献4条经验 获得超0个赞

我仔细看了你的代码好像没有问题。是不是key出错了。我开始也报错了,后面发现是我的经纬度获取的时候,写错了。然后设置中心点的时候出错,导致的。希望对你有帮助

查看完整回答
反对 回复 2015-06-12
?
tzm1513

TA贡献4条经验 获得超0个赞

不知道你解决了没有。我确定key是没有出问题的而且还打印出了地址经纬度。但是界面上显示的是白板,只有百度地图的logo

查看完整回答
反对 回复 2015-06-12
?
微笑了521

TA贡献1条经验 获得超0个赞

你解决了吗

查看完整回答
反对 回复 2015-06-09
  • 4 回答
  • 1 关注
  • 3014 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信