본문 바로가기
안드로이드

[Android] 프래그먼트 내부 구글맵 구현

by 코딩히어로 2021. 3. 3.
728x90

제목


구글맵이란 말 그대로 구글에서 제공하는 지도로써 많은 분야에 사용되고 있습니다.

 

예를 들어 대표적으로 내비게이션이나 위치추적 어플 등을 들 수 있겠죠

 

설명1

 

오늘 알아볼 구글맵은 맵이라고 한정 짓기보다는 구글에서 제공하는 맵 어플을 내 어플 내에 구현하는 느낌입니다

 

왜냐하면 맵 내의 마커를 찍거나 라인을 그리는 등의 기능을 사용할 수 있기 때문이라고 할 수 있어요

 

구글맵을 내가 제작한 맵내부에 구현하기 위해서는 대부분 Activity 안에 Fragment 형태로 구현합니다

 

설명2

 

하지만 내가이미 Fragment로 화면을 구성하였다면 위와 같은 구현은 쉽지 않아요

 

왜냐하면 Fragment 내부에 Fragment는 충돌을 일으키기 때문에.. 이러한 문제를 해결하기 위해

 

구글맵 자체에서는 프래그먼트 내부에 구현할 때의 방법 또한 제시하고 있습니다

 

설명3

구글맵에서는 프래그먼트 내부에 구현시 MapView를 통해서 구현할 수 있도록 해당 Layout을 제공합니다

 

위와 같이 프래그먼트 내부에 MapView를 생성한 뒤에 Fragment 구현 쪽에서 다음과 같이 구현할 수 있어요

 

설명4

첫 번째로 액티비티에 구현했을 때와 동일하게 implements를 통해 OnMapReadyCallback을 입력하고

 

설명5

프래그먼트 내부에 Mapview 를 선언해준 뒤 초기화합니다

 

설명6

onCreateView 내부에 googlemap layout을 등록해주는 작업을 해준 뒤에

 

설명7
설명8

Fragment가 시작될때 googlemap을 실행시켜 주면 됩니다

 

이렇게 되면 MapView에 google맵 구현은 완료되었으며 나머지 카메라 줌이나 이동 등은

 

onMapReady 내부에서 구현해주면 됩니다

 

설명9

여기까지 프래그먼트 내부에 구글맵을 적용하는 방법에 대해 알아보았습니다

 

물론 위와같은 구현은 구글맵 API 계정을 생성하고 내 App에 API 등록 작업을 완료한 상태로 진행해야 합니다

728x90
반응형

댓글