마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

구글맵의 현재 위치 버튼의 이벤트!!@

0 추천
현재 앱에

<fragment
        android:id="@+id/map"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:name="com.google.android.gms.maps.SupportMapFragment"

로 해서 맵이 잘띄워지는 상태 입니다.

검색 기능도 함께 구현했구요!

근데 저렇게 해서 추가한 맵의 오른쪽 상단에는 내위치 버튼이 있더라구요.. 기본적으로 달려있어요

gps가 켜져있으면 동작도 합니다!

근데 제가 원하는건 gps가 켜져있지 않은 상태에서 저 버튼을 누르면 gps 사용을 on하라는 메시지를 띄우려고 합니다.

gps의 온오프 여부나 다이얼로그 띄우는 방법은 알고 있으나..

저 버튼의 클릭을 감지할 이벤트리스너가 없습니다 ㅠ

맵의 소스는 xml로 저게 끝이니.. 뭐 저버튼을 어케 찾아야 할지..
cmsypub (820 포인트) 님이 2015년 9월 8일 질문

2개의 답변

0 추천
내 위치 버튼을 Custom형식으로 제작하여 넣어야 될 것입니다.
개발자초심 (21,220 포인트) 님이 2015년 9월 8일 답변
0 추천
동일한 기능을 구현했던 적이 있었습니다.

아래 코드를 사용했었네요. 고민은 많이 하고 검색 열심히 했는데, 답은 간단하더라구요

 

        map.setOnMyLocationButtonClickListener(new GoogleMap.OnMyLocationButtonClickListener() {
            @Override
            public boolean onMyLocationButtonClick() {
                if (!MapUtils.isLocationEnabled(mContext)) {
                    Toast.makeText(mContext, R.string.turn_on_gps, Toast.LENGTH_LONG).show();
                }
                return false;
            }
        });
cc1232 (35,280 포인트) 님이 2015년 9월 8일 답변
MapUtils는 제가 만든 클래스이므로, 그 부분은 적당히 알아서 대체하시길..
...