Class UiSettings

java.lang.Object
com.naver.maps.map.UiSettings

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

    • 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.
    • setAllGesturesEnabled

      public void setAllGesturesEnabled(boolean enabled)
      모든 제스처에 대한 활성화 상태를 일괄적으로 변경합니다.
      Parameters:
      enabled - 모두 활성화할 경우 true, 모두 비활성화할 경우 false.
      See Also:
    • getScrollGesturesFriction

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

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

      public void setScrollGesturesFriction(@FloatRange(from=0.0,to=1.0) float friction)
      스크롤 제스처의 마찰 계수를 0~1로 지정합니다. 계수가 클수록 마찰이 강해집니다.

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

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

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

      public void setZoomGesturesFriction(@FloatRange(from=0.0,to=1.0) float friction)
      줌 제스처의 마찰 계수를 0~1로 지정합니다. 계수가 클수록 마찰이 강해집니다.

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

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

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

      public void setRotateGesturesFriction(@FloatRange(from=0.0,to=1.0) 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 @Size(4L) public int[] getLogoMargin()
      네이버 로고의 마진을 배열로 반환합니다. 배열의 크기는 4이며, 각 원소는 순서대로 왼쪽, 위쪽, 오른쪽, 아래쪽 마진을 나타냅니다.
      Returns:
      마진 배열. 각 원소는 픽셀 단위.
    • setLogoMargin

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