Class Overlay

java.lang.Object
com.naver.maps.map.overlay.Overlay
All Implemented Interfaces:
Pickable
Direct Known Subclasses:
ArrowheadPathOverlay, CircleOverlay, GroundOverlay, InfoWindow, LocationOverlay, Marker, MultipartPathOverlay, PathOverlay, PolygonOverlay, PolylineOverlay

public abstract class Overlay extends Object implements Pickable
지도에 오버레이되는 요소를 나타내는 추상 클래스. 대부분의 오버레이는 setMap(NaverMap)을 사용해 동적으로 지도에 추가하거나 지도로부터 제거할 수 있습니다.
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    영역이 올바르지 않을 경우 발생하는 예외.
    static class 
    좌표가 올바르지 않을 경우 발생하는 예외.
    static interface 
    오버레이 클릭에 대한 이벤트 리스너 인터페이스.
  • Method Summary

    Modifier and Type
    Method
    Description
    int
    전역 Z 인덱스를 반환합니다.
    오버레이가 추가된 지도 객체를 반환합니다.
    double
    오버레이가 보이는 최대 줌 레벨을 반환합니다.
    double
    오버레이가 보이는 최소 줌 레벨을 반환합니다.
    클릭 이벤트 리스너를 반환합니다.
    태그를 반환합니다.
    int
    보조 Z 인덱스를 반환합니다.
    boolean
    오버레이가 지도에 추가된 상태인지를 반환합니다.
    boolean
    지도의 줌 레벨과 오버레이의 최대 줌 레벨이 동일할 때 오버레이를 보일지 여부를 반환합니다.
    boolean
    지도의 줌 레벨과 오버레이의 최소 줌 레벨이 동일할 때 오버레이를 보일지 여부를 반환합니다.
    boolean
    가시성을 반환합니다.
    boolean
    클릭 이벤트를 발생시킵니다.
    void
    setGlobalZIndex(int globalZIndex)
    전역 Z 인덱스를 지정합니다.
    void
    오버레이를 map에 추가합니다.
    void
    setMaxZoom(double maxZoom)
    오버레이가 보이는 최대 줌 레벨을 지정합니다.
    void
    setMaxZoomInclusive(boolean inclusive)
    지도의 줌 레벨과 오버레이의 최대 줌 레벨이 동일할 때 오버레이를 보일지 여부를 지정합니다.
    void
    setMinZoom(double minZoom)
    오버레이가 보이는 최소 줌 레벨을 지정합니다.
    void
    setMinZoomInclusive(boolean inclusive)
    지도의 줌 레벨과 오버레이의 최소 줌 레벨이 동일할 때 오버레이를 보일지 여부를 지정합니다.
    void
    클릭 이벤트 리스너를 지정합니다.
    void
    태그를 지정합니다.
    void
    setVisible(boolean visible)
    가시성을 지정합니다.
    void
    setZIndex(int zIndex)
    보조 Z 인덱스를 지정합니다.

    Methods inherited from class java.lang.Object

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

    • isAdded

      @UiThread public boolean isAdded()
      오버레이가 지도에 추가된 상태인지를 반환합니다.
      Returns:
      오버레이가 지도에 추가된 상태이면 true, 그렇지 않을 경우 false.
    • getMap

      @Nullable @UiThread public NaverMap getMap()
      오버레이가 추가된 지도 객체를 반환합니다.
      Returns:
      오버레이가 추가된 지도 객체. 지도에 추가된 상태가 아닐 경우 null.
    • setMap

      @UiThread public void setMap(@Nullable NaverMap map)
      오버레이를 map에 추가합니다. mapnull을 지정하면 지도에서 제거됩니다.
      Parameters:
      map - 오버레이를 추가할 지도 객체.
    • performClick

      @UiThread public boolean performClick()
      클릭 이벤트를 발생시킵니다. 사용자가 오버레이를 클릭한 경우와 달리 명시적으로 이 메서드를 호출한 경우에는 오버레이가 이벤트를 소비하지 않더라도 이벤트가 지도에 전달되지 않습니다.
      Returns:
      클릭 이벤트를 오버레이 또는 오버레이의 이벤트 리스너가 소비한 경우 true, 그렇지 않을 경우 false.
    • getOnClickListener

      @Nullable @UiThread public Overlay.OnClickListener getOnClickListener()
      클릭 이벤트 리스너를 반환합니다.

      오직 클릭 이벤트 리스너가 지정된 오버레이만이 클릭 이벤트를 받을 수 있습니다. 예를 들어 마커와 지상 오버레이가 겹쳐져 있고 지상 오버레이에만 클릭 이벤트 리스너가 지정된 경우, 사용자가 마커를 클릭하더라도 지상 오버레이가 클릭 이벤트를 받습니다.
      Returns:
      이벤트 리스너 객체. 지정된 이벤트 리스너가 없을 경우 null.
    • setOnClickListener

      @UiThread public void setOnClickListener(@Nullable Overlay.OnClickListener listener)
      클릭 이벤트 리스너를 지정합니다. 사용자가 오버레이를 클릭하거나 performClick()이 호출되면 listenerOverlay.OnClickListener.onClick(Overlay)이 호출됩니다.

      오직 클릭 이벤트 리스너가 지정된 오버레이만이 클릭 이벤트를 받을 수 있습니다. 예를 들어 마커와 지상 오버레이가 겹쳐져 있고 지상 오버레이에만 클릭 이벤트 리스너가 지정된 경우, 사용자가 마커를 클릭하더라도 지상 오버레이가 클릭 이벤트를 받습니다.
      Parameters:
      listener - 이벤트 리스너 객체. null일 경우 이벤트 리스너가 해제됩니다.
    • getTag

      @UiThread @Nullable public Object getTag()
      태그를 반환합니다.

      기본값은 null입니다.
      Returns:
      태그 객체.
    • setTag

      @UiThread public void setTag(@Nullable Object tag)
      태그를 지정합니다.

      기본값은 null입니다.
      Parameters:
      tag - 태그 객체.
    • isVisible

      @UiThread public boolean isVisible()
      가시성을 반환합니다. 가시성이 false일 경우 오버레이는 화면에 나타나지 않으며 이벤트도 받지 못합니다.

      가시성은 명시적으로 지정하지 않는 한 변하지 않습니다. 즉, 오버레이가 현재 보이는 지도 영역의 바깥쪽으로 나가더라도 가시성이 false로 변하지는 않습니다.

      기본값은 true입니다.
      Returns:
      오버레이가 보여질 경우 true, 그렇지 않을 경우 false.
    • setVisible

      @UiThread public void setVisible(boolean visible)
      가시성을 지정합니다. 가시성이 false일 경우 오버레이는 화면에 나타나지 않으며 이벤트도 받지 못합니다.

      가시성은 명시적으로 지정하지 않는 한 변하지 않습니다. 즉, 오버레이가 현재 보이는 지도 영역의 바깥쪽으로 나가더라도 가시성이 false로 변하지는 않습니다.

      기본값은 true입니다.
      Parameters:
      visible - 가시성.
    • getMinZoom

      @FloatRange(from=0.0, to=21.0) @UiThread public double getMinZoom()
      오버레이가 보이는 최소 줌 레벨을 반환합니다.

      기본값은 NaverMap.MINIMUM_ZOOM입니다.
      Returns:
      오버레이가 보이는 최소 줌 레벨.
      See Also:
    • setMinZoom

      @UiThread public void setMinZoom(@FloatRange(from=0.0,to=21.0) double minZoom)
      오버레이가 보이는 최소 줌 레벨을 지정합니다.

      기본값은 NaverMap.MINIMUM_ZOOM입니다.
      Parameters:
      minZoom - 오버레이가 보이는 최소 줌 레벨.
      See Also:
    • getMaxZoom

      @FloatRange(from=0.0, to=21.0) @UiThread public double getMaxZoom()
      오버레이가 보이는 최대 줌 레벨을 반환합니다.

      기본값은 NaverMap.MINIMUM_ZOOM입니다.
      Returns:
      오버레이가 보이는 최대 줌 레벨.
      See Also:
    • setMaxZoom

      @UiThread public void setMaxZoom(@FloatRange(from=0.0,to=21.0) double maxZoom)
      오버레이가 보이는 최대 줌 레벨을 지정합니다.

      기본값은 NaverMap.MINIMUM_ZOOM입니다.
      Parameters:
      maxZoom - 오버레이가 보이는 최대 줌 레벨.
      See Also:
    • isMinZoomInclusive

      @UiThread public boolean isMinZoomInclusive()
      지도의 줌 레벨과 오버레이의 최소 줌 레벨이 동일할 때 오버레이를 보일지 여부를 반환합니다. 만약 inclusivetrue이면 오버레이가 나타나고 false이면 나타나지 않습니다.

      기본값은 true입니다.
      Returns:
      지도의 줌 레벨과 오버레이의 최소 줌 레벨이 동일할 때 오버레이를 나타낼지 여부.
      See Also:
    • setMinZoomInclusive

      @UiThread public void setMinZoomInclusive(boolean inclusive)
      지도의 줌 레벨과 오버레이의 최소 줌 레벨이 동일할 때 오버레이를 보일지 여부를 지정합니다. 만약 inclusivetrue이면 오버레이가 나타나고 false이면 나타나지 않습니다.

      기본값은 true입니다.
      Parameters:
      inclusive - 지도의 줌 레벨과 오버레이의 최소 줌 레벨이 동일할 때 오버레이를 나타낼지 여부.
      See Also:
    • isMaxZoomInclusive

      @UiThread public boolean isMaxZoomInclusive()
      지도의 줌 레벨과 오버레이의 최대 줌 레벨이 동일할 때 오버레이를 보일지 여부를 반환합니다. 만약 inclusivetrue이면 오버레이가 나타나고 false이면 나타나지 않습니다.

      기본값은 true입니다.
      Returns:
      지도의 줌 레벨과 오버레이의 최대 줌 레벨이 동일할 때 오버레이를 나타낼지 여부.
      See Also:
    • setMaxZoomInclusive

      @UiThread public void setMaxZoomInclusive(boolean inclusive)
      지도의 줌 레벨과 오버레이의 최대 줌 레벨이 동일할 때 오버레이를 보일지 여부를 지정합니다. 만약 inclusivetrue이면 오버레이가 나타나고 false이면 나타나지 않습니다.

      기본값은 true입니다.
      Parameters:
      inclusive - 지도의 줌 레벨과 오버레이의 최대 줌 레벨이 동일할 때 오버레이를 나타낼지 여부.
      See Also:
    • getZIndex

      @UiThread public int getZIndex()
      보조 Z 인덱스를 반환합니다. 전역 Z 인덱스가 동일한 여러 오버레이가 화면에서 겹쳐지면 보조 Z 인덱스가 큰 오버레이가 작은 오버레이를 덮습니다.

      기본값은 0입니다.
      Returns:
      보조 Z 인덱스.
    • setZIndex

      @UiThread public void setZIndex(int zIndex)
      보조 Z 인덱스를 지정합니다. 전역 Z 인덱스가 동일한 여러 오버레이가 화면에서 겹쳐지면 보조 Z 인덱스가 큰 오버레이가 작은 오버레이를 덮습니다.

      기본값은 0입니다.
      Parameters:
      zIndex - 보조 Z 인덱스.
    • getGlobalZIndex

      @UiThread public int getGlobalZIndex()
      전역 Z 인덱스를 반환합니다. 여러 오버레이가 화면에서 겹쳐지면 전역 Z 인덱스가 큰 오버레이가 작은 오버레이를 덮습니다. 또한 값이 0 이상이면 오버레이가 심벌 위에, 0 미만이면 심벌 아래에 그려집니다.
      Returns:
      전역 Z 인덱스.
    • setGlobalZIndex

      @UiThread public void setGlobalZIndex(int globalZIndex)
      전역 Z 인덱스를 지정합니다. 여러 오버레이가 화면에서 겹쳐지면 전역 Z 인덱스가 큰 오버레이가 작은 오버레이를 덮습니다. 또한 값이 0 이상이면 오버레이가 심벌 위에, 0 미만이면 심벌 아래에 그려집니다.
      Parameters:
      globalZIndex - 전역 Z 인덱스.