Class UiSettings


  • @UiThread
    public final class UiSettings
    extends java.lang.Object
    제스처 사용, 컨트롤 노출 등 사용자 인터페이스와 관련된 설정을 관리하는 클래스. 이 클래스의 인스턴스는 직접 생성할 수 없고 NaverMap.getUiSettings()를 이용해서 가져올 수 있습니다. 설정으로 제스처나 컨트롤을 비활성화하더라도 API를 호출하면 여전히 카메라를 움직일 수 있습니다.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      int getLogoGravity()
      네이버 로고의 그래비티를 반환합니다.
      int[] getLogoMargin()
      네이버 로고의 마진을 배열로 반환합니다.
      int getPickTolerance()
      지도 클릭 시 피킹되는 Pickable의 클릭 허용 반경을 반환합니다.
      float getRotateGesturesFriction()
      회전 제스처의 마찰 계수를 0~1로 반환합니다.
      float getScrollGesturesFriction()
      스크롤 제스처의 마찰 계수를 0~1로 반환합니다.
      float getZoomGesturesFriction()
      줌 제스처의 마찰 계수를 0~1로 반환합니다.
      boolean isCompassEnabled()
      나침반이 활성화되어 있는지 여부를 반환합니다.
      boolean isIndoorLevelPickerEnabled()
      실내지도 층 피커가 활성화되어 있는지 여부를 반환합니다.
      boolean isLocationButtonEnabled()
      현위치 버튼이 활성화되어 있는지 여부를 반환합니다.
      boolean isLogoClickEnabled()
      네이버 로고 클릭이 활성화되어 있는지 여부를 반환합니다.
      boolean isRotateGesturesEnabled()
      회전 제스처가 활성화되어 있는지 여부를 반환합니다.
      boolean isScaleBarEnabled()
      축척 바가 활성화되어 있는지 여부를 반환합니다.
      boolean isScrollGesturesEnabled()
      스크롤 제스처가 활성화되어 있는지 여부를 반환합니다.
      boolean isStopGesturesEnabled()
      스톱 제스처가 활성화되어 있는지 여부를 반환합니다.
      boolean isTiltGesturesEnabled()
      틸트 제스처가 활성화되어 있는지 여부를 반환합니다.
      boolean isZoomControlEnabled()
      줌 컨트롤이 활성화되어 있는지 여부를 반환합니다.
      boolean isZoomGesturesEnabled()
      줌 제스처가 활성화되어 있는지 여부를 반환합니다.
      void setAllGesturesEnabled​(boolean enabled)
      모든 제스처에 대한 활성화 상태를 일괄적으로 변경합니다.
      void setCompassEnabled​(boolean enabled)
      나침반을 활성화할지 여부를 지정합니다.
      void setIndoorLevelPickerEnabled​(boolean enabled)
      실내지도 층 피커를 활성화할지 여부를 지정합니다.
      void setLocationButtonEnabled​(boolean enabled)
      현위치 버튼을 활성화할지 여부를 지정합니다.
      void setLogoClickEnabled​(boolean enabled)
      네이버 로고 클릭을 활성화할지 여부를 지정합니다.
      void setLogoGravity​(int gravity)
      네이버 로고의 그래비티를 지정합니다.
      void setLogoMargin​(int left, int top, int right, int bottom)
      네이버 로고의 마진을 지정합니다.
      void setPickTolerance​(int tolerance)
      지도 클릭 시 피킹되는 Pickable의 클릭 허용 반경을 지정합니다.
      void setRotateGesturesEnabled​(boolean enabled)
      회전 제스처를 활성화할지 여부를 지정합니다.
      void setRotateGesturesFriction​(float friction)
      회전 제스처의 마찰 계수를 0~1로 지정합니다.
      void setScaleBarEnabled​(boolean enabled)
      축척 바를 활성화할지 여부를 지정합니다.
      void setScrollGesturesEnabled​(boolean enabled)
      스크롤 제스처를 활성화할지 여부를 지정합니다.
      void setScrollGesturesFriction​(float friction)
      스크롤 제스처의 마찰 계수를 0~1로 지정합니다.
      void setStopGesturesEnabled​(boolean enabled)
      스톱 제스처를 활성화할지 여부를 지정합니다.
      void setTiltGesturesEnabled​(boolean enabled)
      틸트 제스처를 활성화할지 여부를 지정합니다.
      void setZoomControlEnabled​(boolean enabled)
      줌 컨트롤을 활성화할지 여부를 지정합니다.
      void setZoomGesturesEnabled​(boolean enabled)
      줌 제스처를 활성화할지 여부를 지정합니다.
      void setZoomGesturesFriction​(float friction)
      줌 제스처의 마찰 계수를 0~1로 지정합니다.
      • Methods inherited from class java.lang.Object

        equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
    • Method Detail

      • getPickTolerance

        @Px
        public int getPickTolerance()
        지도 클릭 시 피킹되는 Pickable의 클릭 허용 반경을 반환합니다. 사용자가 지도를 클릭했을 때, 클릭된 지점이 Pickable의 영역 내에 존재하지 않더라도 허용 반경 내에 있다면 해당 요소가 클릭된 것으로 간주됩니다.

        기본값은 NaverMap.DEFAULT_PICK_TOLERANCE_DP를 픽셀로 환산한 값입니다.
        Returns:
        클릭 시 피킹 허용 반경. 픽셀 단위.
      • setPickTolerance

        public void setPickTolerance​(@Px
                                     int tolerance)
        지도 클릭 시 피킹되는 Pickable의 클릭 허용 반경을 지정합니다. 사용자가 지도를 클릭했을 때, 클릭된 지점이 Pickable의 영역 내에 존재하지 않더라도 허용 반경 내에 있다면 해당 요소가 클릭된 것으로 간주됩니다.

        기본값은 NaverMap.DEFAULT_PICK_TOLERANCE_DP를 픽셀로 환산한 값입니다.
        Parameters:
        tolerance - 클릭 시 피킹 허용 반경. 픽셀 단위.
      • isScrollGesturesEnabled

        public boolean isScrollGesturesEnabled()
        스크롤 제스처가 활성화되어 있는지 여부를 반환합니다. 활성화되면 지도를 스와이프해 카메라의 좌표를 변경할 수 있습니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setScrollGesturesEnabled

        public void setScrollGesturesEnabled​(boolean enabled)
        스크롤 제스처를 활성화할지 여부를 지정합니다. 활성화하면 지도를 스와이프해 카메라의 좌표를 변경할 수 있습니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isZoomGesturesEnabled

        public boolean isZoomGesturesEnabled()
        줌 제스처가 활성화되어 있는지 여부를 반환합니다. 활성화되면 지도를 더블 탭, 두 손가락 탭, 핀치해 카메라의 줌 레벨을 변경할 수 있습니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setZoomGesturesEnabled

        public void setZoomGesturesEnabled​(boolean enabled)
        줌 제스처를 활성화할지 여부를 지정합니다. 활성화하면 지도를 더블 탭, 두 손가락 탭, 핀치해 카메라의 줌 레벨을 변경할 수 있습니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isTiltGesturesEnabled

        public boolean isTiltGesturesEnabled()
        틸트 제스처가 활성화되어 있는지 여부를 반환합니다. 활성화되면 지도를 두 손가락으로 세로로 스와이프해 카메라의 기울기 각도를 변경할 수 있습니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setTiltGesturesEnabled

        public void setTiltGesturesEnabled​(boolean enabled)
        틸트 제스처를 활성화할지 여부를 지정합니다. 활성화하면 지도를 두 손가락으로 세로로 스와이프해 카메라의 기울기 각도를 변경할 수 있습니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isRotateGesturesEnabled

        public boolean isRotateGesturesEnabled()
        회전 제스처가 활성화되어 있는지 여부를 반환합니다. 활성화되면 두 손가락으로 지도를 돌려 카메라의 베어링 각도를 변경할 수 있습니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setRotateGesturesEnabled

        public void setRotateGesturesEnabled​(boolean enabled)
        회전 제스처를 활성화할지 여부를 지정합니다. 활성화하면 두 손가락으로 지도를 돌려 카메라의 베어링 각도를 변경할 수 있습니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isStopGesturesEnabled

        public boolean isStopGesturesEnabled()
        스톱 제스처가 활성화되어 있는지 여부를 반환합니다. 활성화되면 지도 애니메이션 진행 중 탭으로 지도 애니메이션을 중지할 수 있습니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setStopGesturesEnabled

        public void setStopGesturesEnabled​(boolean enabled)
        스톱 제스처를 활성화할지 여부를 지정합니다. 활성화하면 지도 애니메이션 진행 중 탭으로 지도 애니메이션을 중지할 수 있습니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • getScrollGesturesFriction

        public float getScrollGesturesFriction()
        스크롤 제스처의 마찰 계수를 0~1로 반환합니다. 계수가 클수록 마찰이 강해집니다.

        기본값은 NaverMap.DEFAULT_SCROLL_GESTURES_FRICTION입니다.
        Returns:
        마찰 계수.
      • setScrollGesturesFriction

        public void setScrollGesturesFriction​(float friction)
        스크롤 제스처의 마찰 계수를 0~1로 지정합니다. 계수가 클수록 마찰이 강해집니다.

        기본값은 NaverMap.DEFAULT_SCROLL_GESTURES_FRICTION입니다.
        Parameters:
        friction - 마찰 계수.
      • getZoomGesturesFriction

        public float getZoomGesturesFriction()
        줌 제스처의 마찰 계수를 0~1로 반환합니다. 계수가 클수록 마찰이 강해집니다.

        기본값은 NaverMap.DEFAULT_ZOOM_GESTURES_FRICTION입니다.
        Returns:
        마찰 계수.
      • setZoomGesturesFriction

        public void setZoomGesturesFriction​(float friction)
        줌 제스처의 마찰 계수를 0~1로 지정합니다. 계수가 클수록 마찰이 강해집니다.

        기본값은 NaverMap.DEFAULT_ZOOM_GESTURES_FRICTION입니다.
        Parameters:
        friction - 마찰 계수.
      • getRotateGesturesFriction

        public float getRotateGesturesFriction()
        회전 제스처의 마찰 계수를 0~1로 반환합니다. 계수가 클수록 마찰이 강해집니다.

        기본값은 NaverMap.DEFAULT_ROTATE_GESTURES_FRICTION입니다.
        Returns:
        마찰 계수.
      • setRotateGesturesFriction

        public void setRotateGesturesFriction​(float friction)
        회전 제스처의 마찰 계수를 0~1로 지정합니다. 계수가 클수록 마찰이 강해집니다.

        기본값은 NaverMap.DEFAULT_ROTATE_GESTURES_FRICTION입니다.
        Parameters:
        friction - 마찰 계수.
      • isCompassEnabled

        public boolean isCompassEnabled()
        나침반이 활성화되어 있는지 여부를 반환합니다. 활성화되면 나침반이 노출됩니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setCompassEnabled

        public void setCompassEnabled​(boolean enabled)
        나침반을 활성화할지 여부를 지정합니다. 활성화하면 나침반이 노출됩니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isScaleBarEnabled

        public boolean isScaleBarEnabled()
        축척 바가 활성화되어 있는지 여부를 반환합니다. 활성화되면 축척 바가 노출됩니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setScaleBarEnabled

        public void setScaleBarEnabled​(boolean enabled)
        축척 바를 활성화할지 여부를 지정합니다. 활성화하면 축척 바가 노출됩니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isZoomControlEnabled

        public boolean isZoomControlEnabled()
        줌 컨트롤이 활성화되어 있는지 여부를 반환합니다. 활성화되면 줌 컨트롤이 노출됩니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setZoomControlEnabled

        public void setZoomControlEnabled​(boolean enabled)
        줌 컨트롤을 활성화할지 여부를 지정합니다. 활성화하면 줌 컨트롤이 노출됩니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isIndoorLevelPickerEnabled

        public boolean isIndoorLevelPickerEnabled()
        실내지도 층 피커가 활성화되어 있는지 여부를 반환합니다. 활성화되면 실내지도 패널이 노출됩니다.

        기본값은 false입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setIndoorLevelPickerEnabled

        public void setIndoorLevelPickerEnabled​(boolean enabled)
        실내지도 층 피커를 활성화할지 여부를 지정합니다. 활성화하면 실내지도 패널이 노출됩니다.

        기본값은 false입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isLocationButtonEnabled

        public boolean isLocationButtonEnabled()
        현위치 버튼이 활성화되어 있는지 여부를 반환합니다. 활성화되면 현위치 버튼이 노출됩니다.

        기본값은 false입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setLocationButtonEnabled

        public void setLocationButtonEnabled​(boolean enabled)
        현위치 버튼을 활성화할지 여부를 지정합니다. 활성화하면 현위치 버튼이 노출됩니다.

        기본값은 false입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • isLogoClickEnabled

        public boolean isLogoClickEnabled()
        네이버 로고 클릭이 활성화되어 있는지 여부를 반환합니다. 활성화하면 네이버 로고 클릭시 범례, 법적 공지, 오픈소스 라이선스를 보여주는 다이얼로그가 열립니다.

        이 옵션을 false로 지정하는 앱은 반드시 앱 내에 네이버 지도 SDK의 법적 공지 액티비티(LegalNoticeActivity) 및 오픈소스 라이선스 액티비티(OpenSourceLicenseActivity)로 연결되는 메뉴를 만들어야 합니다.

        기본값은 true입니다.
        Returns:
        활성화된 경우 true, 그렇지 않을 경우 false.
      • setLogoClickEnabled

        public void setLogoClickEnabled​(boolean enabled)
        네이버 로고 클릭을 활성화할지 여부를 지정합니다. 활성화하면 네이버 로고 클릭시 범례, 법적 공지, 오픈소스 라이선스를 보여주는 다이얼로그가 열립니다.

        이 옵션을 false로 지정하는 앱은 반드시 앱 내에 네이버 지도 SDK의 법적 공지 액티비티(LegalNoticeActivity) 및 오픈소스 라이선스 액티비티(OpenSourceLicenseActivity)로 연결되는 메뉴를 만들어야 합니다.

        기본값은 true입니다.
        Parameters:
        enabled - 활성화할 경우 true, 그렇지 않을 경우 false.
      • getLogoGravity

        public int getLogoGravity()
        네이버 로고의 그래비티를 반환합니다.
        Returns:
        그래비티.
        See Also:
        Gravity
      • setLogoGravity

        public void setLogoGravity​(int gravity)
        네이버 로고의 그래비티를 지정합니다.
        Parameters:
        gravity - 그래비티.
        See Also:
        Gravity
      • getLogoMargin

        @NonNull
        public int[] getLogoMargin()
        네이버 로고의 마진을 배열로 반환합니다. 배열의 크기는 4이며, 각 원소는 순서대로 왼쪽, 위쪽, 오른쪽, 아래쪽 마진을 나타냅니다.
        Returns:
        마진 배열. 각 원소는 픽셀 단위.
      • setLogoMargin

        public void setLogoMargin​(@Px
                                  int left,
                                  @Px
                                  int top,
                                  @Px
                                  int right,
                                  @Px
                                  int bottom)
        네이버 로고의 마진을 지정합니다.
        Parameters:
        left - 왼쪽 마진. 픽셀 단위.
        top - 위쪽 마진. 픽셀 단위.
        right - 오른쪽 마진. 픽셀 단위.
        bottom - 아래쪽 마진. 픽셀 단위.