我有我的安卓应用程序,我想在我的MapActivity 5000 GeoPoints上显示。为此,我使用以下代码:
for(BusinessUnitMapModel model : DeviceClientApplication.getInstance().getBusinessUnitList()){
GeoPoint point = new GeoPoint((int)(Double.parseDouble(model.getLatitude())*1E6),(int)(Double.parseDouble(model.getLongitude())*1E6));
OverlayItem overlayItem = new OverlayItem(point, "", "");
itemizedOverlay.addOverlay(overlayItem);
}但是当我试图进入MapActivity时,我的应用程序崩溃了。
可能有人知道如何添加上千个GeoPoints?
发布于 2012-10-05 18:32:39
我认为解决方案是创建额外的服务器端服务,它根据屏幕坐标(右上角和左下角)发送不超过50个商店。因此,如果用户缩小或放大地图视图,Android应用程序将向服务器端发送新的请求。无论如何,用户不能在屏幕上看到所有5000点,用户不需要它。
发布于 2011-10-21 01:10:34
最有可能的是,你得到的是一个内存不足的异常,因为你在地图上添加了大量的覆盖。如果是这种情况,您需要找到一种解决方法。在互联网上有很多不同的帖子(搜索“android地图活动内存异常”)供你查看并获取建议。这里有一个例子:
http://code.google.com/p/android/issues/detail?id=2181
祝好运!
https://stackoverflow.com/questions/7839142
复制相似问题