티스토리 뷰

Andorid googlemap v2관련 작업을 하다보면 마커의 zIndex를 바꿔주고 싶을때가 있습니다. 중요도가 큰 마커를 앞쪽으로 꺼내는것이죠


마커에 zIndex를 설정하는 방법에 관해서 알아보겠습니다.





먼저 자신의 gradle파일에서 dependencies쪽을 봐주세요(eclipse 사용자의 경우에는 라이브러리 설정쪽을 보시면 됩니다.)

dependencies {
compile project(':android')
compile files('libs/bugsense-3.6.1.jar')
compile files('libs/libDaumMapAndroid.jar')
compile files('libs/nmaps.jar')
compile 'com.android.support:appcompat-v7:23.3.0'
compile 'com.github.ParkSangGwon:TedPermission:v1.0.12'
compile 'com.google.android.gms:play-services:9.6.1'
compile 'com.google.maps.android:android-maps-utils:0.4.4'
compile 'com.android.support:multidex:1.0.1'
}

위의 코드는 저의 dependencies 섹션입니다. 주목하실 부분은 com.google.android.gms:play-services:9.6.1 부분입니다.


marker의 zIndex를 설정하려면 play-services 라이브러리 버전이 9.2 이상이어야 됩니다.




Google APIs release notes를 보면 9.2버전에서 MarkerOptions 클래스에 zIndex()라는 함수가 새롭게 추가된 것을 볼 수 있습니다.





자 이제 9.2v 이하의 라이브러리를 사용하고 계시는 분은 원래있던 코드를 지우고 9.2.0이상의 숫자를 넣어주시면 됩니다.


넣어 주고 Gradle Sync를 맞춰주시면 


Marker marker = mMap.addMarker(new MarkerOptions()
.position(locPoint)
.title(placeName)
.icon(BitmapDescriptorFactory.fromBitmap(markerIcon))
.alpha(markerAlpha)
.snippet(is_dst)
.zIndex(markerZindex));
dropMarker(marker);

저처럼 요렇게  zIndex함수를 사용 할 수 있습니다.



NOTE. zIndex 의 parameter는  float형이고 숫자가 클수록 더 위쪽으로 마커가 올라오게 됩니다.



댓글
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
«   2024/04   »
1 2 3 4 5 6
7 8 9 10 11 12 13
14 15 16 17 18 19 20
21 22 23 24 25 26 27
28 29 30
글 보관함