2014-09-30 87 views

回答

1

这并不完全清楚你问的是什么,但我想你是要求经纬度边界框。

BoundingBoxE6 boundingBox = mMapView.getProjection().getBoundingBox(); 
+1

感谢名单,但actully我需要动态地获取的坐标我(上,下,左,右)拐角或屏幕的两侧(上,下,左,右),所以我可以检测到加载或不加分。 我试过这样的: Projection proj = myMap.getProjection(); GeoPoint topLeft =(GeoPoint)proj.fromPixels(0,0); Log.i(“左上角”,topLeft.getLongitudeE6()+“a”); 和topLeft.getLongitudeE6()总是0,我在onCreate中如果它很重要 – vpxfhu77 2014-09-30 23:22:22

+0

这并不真正告诉我们@kurtzmarc发布的解决方案是否适合您。如果它工作,你只需要订阅一个滚动事件我猜。 – scai 2014-10-01 13:02:43

0

“我这样做是在的onCreate如果它重要”=>是,它是。

实际上,您无法访问onCreate中正确的mapview边界框。 这是“因为MapView的宽度和高度为零,因为它还没有onLayout调用”

这是一个(令人讨厌的)osmdroid问题,在v4.2中没有修复。

另外,在onCreate中调用时,setCenter在v4.2中也无法正常工作。

在这里看到更多的解释和解决办法:https://github.com/osmdroid/osmdroid/issues/22