안드로이드 개발 질문/답변
(글 수 45,052)
private static Drawable gpsMarker;
private static Drawable facilityMarker;
요렇게 선언해주었고요 onCreate() 에서
gpsMarker=getResources().getDrawable(R.drawable.gps_marker);
facilityMarker=getResources().getDrawable(R.drawable.facility_marker);
요렇게 해주었습니다.
그리고 나서 핸들러 메소드에서
private final Handler handler = new Handler(){
public void handleMessage(Message msg) {
/*if(progressDialog.isShowing()){
progressDialog.dismiss();
}*/
switch(msg.what){
case GPS_UPDATE:{
if (mapView.getOverlays().contains(myLocationItemizedOverlay)) {
mapView.getOverlays().remove(myLocationItemizedOverlay);
}
myLocationItemizedOverlay= new MyLocationItemizedOverlay(overlayItem,gpsMarker,CampusMapActivity.this);
mapView.getOverlays().add(myLocationItemizedOverlay);
mapView.invalidate();
//finish();
break;
}
case FACILITIES_UPDATE:{
if(mapView.getOverlays().contains(facilityItemizedOverlay)){
mapView.getOverlays().remove(facilityItemizedOverlay);
}
facilityItemizedOverlay=new FacilityItemizedOverlay(facilitiesOverlayList,facilityMarker,CampusMapActivity.this);
mapView.getOverlays().add(facilityItemizedOverlay);
//mapController.animateTo(facilityItemizedOverlay.getItem(0).point);
mapView.invalidate();
//finish();
break;
}
}
}
};
요렇게 넣어주었는데요.. gps 마커는 잘그려집니다.. 빌딩 검색후 facilityMarker 가 않그려지네요..
진짜 신기 한건...facilityMarker를 gpsMarker 로 바꾸어주면... gps위치고 검색된 빌딩의 위치에 모두 gpsMarker가 잘찍힙니다..
gps 랑 빌딩이랑 각각 다른 마커를 그려주고 싶은데요..왜 않되는걸까요? 혹시 onCreate()에서 getResource() 에서의 문제 일까요?
빌딩 마커는 res폴더 drwable 폴더에 잘저장해 두었습니다...
private static Drawable facilityMarker;
요렇게 선언해주었고요 onCreate() 에서
gpsMarker=getResources().getDrawable(R.drawable.gps_marker);
facilityMarker=getResources().getDrawable(R.drawable.facility_marker);
요렇게 해주었습니다.
그리고 나서 핸들러 메소드에서
private final Handler handler = new Handler(){
public void handleMessage(Message msg) {
/*if(progressDialog.isShowing()){
progressDialog.dismiss();
}*/
switch(msg.what){
case GPS_UPDATE:{
if (mapView.getOverlays().contains(myLocationItemizedOverlay)) {
mapView.getOverlays().remove(myLocationItemizedOverlay);
}
myLocationItemizedOverlay= new MyLocationItemizedOverlay(overlayItem,gpsMarker,CampusMapActivity.this);
mapView.getOverlays().add(myLocationItemizedOverlay);
mapView.invalidate();
//finish();
break;
}
case FACILITIES_UPDATE:{
if(mapView.getOverlays().contains(facilityItemizedOverlay)){
mapView.getOverlays().remove(facilityItemizedOverlay);
}
facilityItemizedOverlay=new FacilityItemizedOverlay(facilitiesOverlayList,facilityMarker,CampusMapActivity.this);
mapView.getOverlays().add(facilityItemizedOverlay);
//mapController.animateTo(facilityItemizedOverlay.getItem(0).point);
mapView.invalidate();
//finish();
break;
}
}
}
};
요렇게 넣어주었는데요.. gps 마커는 잘그려집니다.. 빌딩 검색후 facilityMarker 가 않그려지네요..
진짜 신기 한건...facilityMarker를 gpsMarker 로 바꾸어주면... gps위치고 검색된 빌딩의 위치에 모두 gpsMarker가 잘찍힙니다..
gps 랑 빌딩이랑 각각 다른 마커를 그려주고 싶은데요..왜 않되는걸까요? 혹시 onCreate()에서 getResource() 에서의 문제 일까요?
빌딩 마커는 res폴더 drwable 폴더에 잘저장해 두었습니다...