Bob*_*ke4 5 java android google-maps google-maps-api-2
我正在使用谷歌地图v2 api为我正在构建的Android应用程序,它必须在地图上绘制多边形.当多边形的数量很小时,一切正常,当数字越大时,地图加载缓慢,平移和缩放真的很慢.我正在使用SupportMapFragment并添加如下多边形:
for(PolygonOptions item : items) {
getMap().addPolygon(poly);
}
Run Code Online (Sandbox Code Playgroud)
有没有办法提高大量多边形的性能?
Bobbake4 是正确的。Android 要求 addPolygon 位于主线程上。我也有类似的问题。目前我正在实现 asynctask,但似乎没有办法从doInBackground我当前的代码中执行 addPolygon ,如下所示:
private class AddPolygonToMap extends
AsyncTask<String, Integer, ArrayList<PolygonOptions>> {
@Override
protected ArrayList<PolygonOptions> doInBackground(String... urls) {
publishProgress(1);
return drawPolygonWithPage(urls[0]);
}
@Override
protected void onProgressUpdate(Integer... progress) {
int value = progress[0] + progressBar.getProgress();
progressBar.setProgress(value);
}
@Override
protected void onPostExecute(ArrayList<PolygonOptions> result) {
for (int i = 0; i < result.size(); i++) {
map.addPolygon(result.get(i));
}
}
}
Run Code Online (Sandbox Code Playgroud)
理想情况下,我想要 addPolygon 背景...还有其他方法可以完成此任务吗?