안드로이드 개발 질문/답변
(글 수 45,052)
제가 현재 다음지도를 사용해서 어플을 만들고 있습니다.
근데 마커를 찍는 부분에 while 문을 사용해서
name[DBCount] = cursor.getString(0);
latitude[DBCount] = Double.parseDouble(cursor.getString(1)
.toString());
longitude[DBCount] = Double.parseDouble(cursor.getString(2)
.toString());
poiItem[DBCount].setItemName(name[DBCount]);
poiItem[DBCount].setMapPoint(MapPoint.mapPointWithGeoCoord(
latitude[DBCount], longitude[DBCount]));
poiItem[DBCount].setMarkerType(MapPOIItem.MarkerType.BluePin);
poiItem[DBCount]
.setShowAnimationType(MapPOIItem.ShowAnimationType.NoAnimation);
poiItem[DBCount].setShowCalloutBalloonOnTouch(true);
poiItem[DBCount].setDraggable(false);
poiItem[DBCount].setTag(DBCount);
mapView.addPOIItem(poiItem[i]);
이런 식으로 코딩을 했는데
마지막 줄(mapView.addPOIItem(poiItem[i]);)에서 하나씩 마커를 찍다보니 [대략 1700개] 너무 오래 걸리더라구요
[대략 4초 정도, 가끔씩은 5초를 넘어서 전 activity로 돌아오는 경우도 있고요]
그래서 스레드, 핸들러 검색해보고 바꿔보려고 했는데 맵을 이용해서 설명해주는 사람이 없더라구요
보통 텍스뷰에 값 넘기는 식의 예제만 있고...
제가 궁금한거는 저기서
화면에는 맵.activity를 보여주고 스레드를 통해서 좌표를 찍으면
그게 맵.activity에 하나둘씩 추가되서 나오게 할 수 있는지 그게 궁금합니다.
[무슨 말이냐면 한번에 1700개 띄우면 아예 화면이 안나오니까,
화면을 띄우고 좌표를 하나둘씩 띄워줄 수 있는지 궁금합니다.
아예 불가능 한거를 계속 붙잡고 있는건 아닌지 이런 생각도 들기도 하구요
답변 부탁드립니다.