高德地图获取mapview宽度和高度为0

项目中需要在高德地图界面显示一个marker 大头针,要求大头针一直保持在屏幕的中心,需要获取mapview的宽度和高度,但是在oncreate()中获得mapview的宽高都是0,这个问题是因为在oncreate方法中mapview还没有绘制完成,必须等view绘制完成之后才能获取宽度和高度,所以,我们必须等到View绘制完成后再去获取width和Height。
下面提供1种方法
ViewTreeObserver vto = mMapView.getViewTreeObserver(); vto.addOnPreDrawListener(new ViewTreeObserver.OnPreDrawListener() { public boolean onPreDraw() { int height = mMapView.getMeasuredHeight(); int width = mMapView.getMeasuredWidth(); return true; }});
特在此记录一下
参考连接http://www.cnblogs.com/kissazi2/p/4133927.html

你可能感兴趣的:(高德地图获取mapview宽度和高度为0)