반응형
안드로이드(Android) google map API v2 에서 지도에 마커설정하기 |
개발환경 : window 7 64bit, Eclipse Kepler, Android 4.2.2 |
지도에 무언가 표현을 하기 위해 표시를 하기위해
마커를 표시한다. 그리고 마커 위에 글도 쓰고 글도 쓰고
여러가지 표현을 한다.
이번 예제는 기본 마커아이콘인 풍선모양이 아닌 원하는
아이콘을 설정해서 표시 할수도 있다.
우선 기본 마커표시를 위한 소스는 다음과 같다.
addMarker 함수에 MarkerOptions 객체를 넣으면 된다.
MarkerOptions 객체는 좌표를 설정하고 제목을 넣으면
기본 아이콘이 그림과 같이 표시가 된다.
MarkerOptions optSecond = new MarkerOptions(); optSecond.position(new LatLng(37.521280, 127.041268));// 위도 • 경도 optSecond.title(title); // 제목 미리보기 optSecond.snippet("Snippet2"); mGoogleMap.addMarker(optSecond).showInfoWindow();
두번째 원하는 아이콘을 마커로 사용하고 싶다면
BitmapDescriptionFactory.fromResource() 함수를 사용해 리소스에서
아이콘을 가져와 셋팅을 하면 지도에 지정한 아이콘이 표시된다.
MarkerOptions optFirst = new MarkerOptions(); optFirst.snippet("Snippet"); optFirst.icon(BitmapDescriptorFactory.fromResource(R.drawable.ic_launcher));
맵 마커를 설정하는 함수에 대한 전체 내용은 다음과 같다.
그리고 그 아래에 아래 소스로 구현한 화면이 있다.
private void init() { Intent getI = getIntent(); String title = getI.getStringExtra("marker test 1"); String coordinates[] = { "37.517180", "127.041268" }; double lat = Double.parseDouble(coordinates[0]); double lng = Double.parseDouble(coordinates[1]); LatLng position = new LatLng(lat, lng); GooglePlayServicesUtil.isGooglePlayServicesAvailable(MainActivity.this); mGoogleMap = ((SupportMapFragment) getSupportFragmentManager() .findFragmentById(R.id.map)).getMap(); // 터치이벤트 설정 mGoogleMap.setOnMapClickListener(this); // 맵 위치이동. mGoogleMap.moveCamera(CameraUpdateFactory.newLatLngZoom(position, 15)); // 첫번째 마커 설정. MarkerOptions optFirst = new MarkerOptions(); optFirst.position(position);// 위도 • 경도 optFirst.title(title);// 제목 미리보기 optFirst.snippet("Snippet"); optFirst.icon(BitmapDescriptorFactory .fromResource(R.drawable.ic_launcher)); mGoogleMap.addMarker(optFirst).showInfoWindow(); // 두번째 마커 설정. MarkerOptions optSecond = new MarkerOptions(); optSecond.position(new LatLng(37.521280, 127.041268));// 위도 • 경도 optSecond.title(title); // 제목 미리보기 optSecond.snippet("Snippet2"); mGoogleMap.addMarker(optSecond).showInfoWindow(); // 마커 클릭 리스너 mGoogleMap.setOnMarkerClickListener(new OnMarkerClickListener() { public boolean onMarkerClick(Marker marker) { return false; } }); }
반응형
'안드로이드 개발' 카테고리의 다른 글
안드로이드(Android) CPU 버전 알아오기 (0) | 2014.10.24 |
---|---|
안드로이드(Android) 2014년 9월 까지 플랫폼 버전과 화면해상도 분포 (0) | 2014.10.24 |
안드로이드(Android) OS 버전과 시스템정보 알아오기 (0) | 2014.10.23 |
안드로이드(Android) 저장소(Sdcard) 에서 읽어온 파일이 이미지인지 판단하기 (0) | 2014.10.23 |
안드로이드(Android) HorizontalScrollView 이용해 이미지 갤러리 만들기 – 2부 (0) | 2014.10.22 |
안드로이드(Android) HorizontalScrollView 이용해 이미지 갤러리 만들기 – 1부 (0) | 2014.10.22 |
안드로이드(Android) XML 을 사용하여 이미지 버튼 배경 로딩하기 (0) | 2014.10.13 |
안드로이드(Android) SeekBar 로 배경색 변경하기 (0) | 2014.10.09 |