많은 마커 (~ 20-50)를 보여주는 내 안드로이드 응용 프로그램의지도가 있습니다. 하지만 앱이 스크롤/확대/축소를 시도 할 때 매우 열악합니다 (Google Android지도에서 피자 샘플 검색을했는데 20-50 개의 결과가 발견되어 확대/축소 할 때 특정 성능 문제가 발생하지 않았습니다. 지도).안드로이드 맵 많은 오버레이 때문에 성능이 좋지 않습니까?
가 MyItemizedOverlay.addOverlay은 다음과 같습니다
onCreate() {
....
drawable = this.getResources().getDrawable(R.drawable.marker1);
itemizedOverlay = new MyItemizedOverlay(drawable,mapView);
...
callWebServiceToRetrieveData();
createMarkers();
}
createMarkers(){
for(elem:bigList){
GeoPoint geoPoint = new GeoPoint((int)(elem.getLat()*1000000), (int) (elem.getLon()*1000000));
OverlayItem overlayItem = new OverlayItem(geoPoint, elem.getName(), elem.getData());
itemizedOverlay.addOverlay(overlayItem);
mapOverlays.add(itemizedOverlay);
}
mapView.invalidate();
} : 다음
내 (의사) 코드 나는이 올바르게 작동하는지 이해하는 경우public void addOverlay(OverlayItem overlay) {
m_overlays.add(overlay);
populate();
}
뿐만 아니라에서
라고,하지만 당신은 오버레이에 하나 개 이상의 마커를 가질 수 있습니다. 의사 코드가 쓰여지는 방식으로 마커 당 동일한 오버레이를 한 번 추가합니다. - mapOverlays.add (itemizedOverlay); - 정확하게 도움이되지 않습니다. – CommonsWare어떻게하면 좋을까요? – Dave
내게도 흥미로울 것입니다. –