Class GeoView
- java.lang.Object
-
- android.view.View
-
- android.view.ViewGroup
-
- com.esri.arcgisruntime.mapping.view.GeoView
-
- All Implemented Interfaces:
android.graphics.drawable.Drawable.Callback
,android.view.accessibility.AccessibilityEventSource
,android.view.KeyEvent.Callback
,android.view.ViewManager
,android.view.ViewParent
public abstract class GeoView extends android.view.ViewGroup
GeoView is a base class for MapView and SceneView (when available), these represent the View in an Model View Controller (MVC) architecture, the Map and Scene that are set on these views represent the model.It contains all of the common operations and events that apply to displaying and working with Maps and Scenes. This includes changing what is viewable by setting a viewpoint, responding to viewpoint change events, working with graphics overlays and identifying elements that displayed at a given location in the view.
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
GeoView.InteractionOptions
Defines options to control user interactions with a GeoView.-
Nested classes/interfaces inherited from class android.view.ViewGroup
android.view.ViewGroup.LayoutParams, android.view.ViewGroup.MarginLayoutParams, android.view.ViewGroup.OnHierarchyChangeListener
-
Nested classes/interfaces inherited from class android.view.View
android.view.View.AccessibilityDelegate, android.view.View.BaseSavedState, android.view.View.DragShadowBuilder, android.view.View.MeasureSpec, android.view.View.OnApplyWindowInsetsListener, android.view.View.OnAttachStateChangeListener, android.view.View.OnCapturedPointerListener, android.view.View.OnClickListener, android.view.View.OnContextClickListener, android.view.View.OnCreateContextMenuListener, android.view.View.OnDragListener, android.view.View.OnFocusChangeListener, android.view.View.OnGenericMotionListener, android.view.View.OnHoverListener, android.view.View.OnKeyListener, android.view.View.OnLayoutChangeListener, android.view.View.OnLongClickListener, android.view.View.OnScrollChangeListener, android.view.View.OnSystemUiVisibilityChangeListener, android.view.View.OnTouchListener, android.view.View.OnUnhandledKeyEventListener
-
-
Field Summary
-
Fields inherited from class android.view.ViewGroup
CLIP_TO_PADDING_MASK, FOCUS_AFTER_DESCENDANTS, FOCUS_BEFORE_DESCENDANTS, FOCUS_BLOCK_DESCENDANTS, LAYOUT_MODE_CLIP_BOUNDS, LAYOUT_MODE_OPTICAL_BOUNDS, PERSISTENT_ALL_CACHES, PERSISTENT_ANIMATION_CACHE, PERSISTENT_NO_CACHE, PERSISTENT_SCROLLING_CACHE
-
Fields inherited from class android.view.View
ACCESSIBILITY_LIVE_REGION_ASSERTIVE, ACCESSIBILITY_LIVE_REGION_NONE, ACCESSIBILITY_LIVE_REGION_POLITE, ALPHA, AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DATE, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_DAY, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_MONTH, AUTOFILL_HINT_CREDIT_CARD_EXPIRATION_YEAR, AUTOFILL_HINT_CREDIT_CARD_NUMBER, AUTOFILL_HINT_CREDIT_CARD_SECURITY_CODE, AUTOFILL_HINT_EMAIL_ADDRESS, AUTOFILL_HINT_NAME, AUTOFILL_HINT_PASSWORD, AUTOFILL_HINT_PHONE, AUTOFILL_HINT_POSTAL_ADDRESS, AUTOFILL_HINT_POSTAL_CODE, AUTOFILL_HINT_USERNAME, AUTOFILL_TYPE_DATE, AUTOFILL_TYPE_LIST, AUTOFILL_TYPE_NONE, AUTOFILL_TYPE_TEXT, AUTOFILL_TYPE_TOGGLE, DRAG_FLAG_ACCESSIBILITY_ACTION, DRAG_FLAG_GLOBAL, DRAG_FLAG_GLOBAL_PERSISTABLE_URI_PERMISSION, DRAG_FLAG_GLOBAL_PREFIX_URI_PERMISSION, DRAG_FLAG_GLOBAL_URI_READ, DRAG_FLAG_GLOBAL_URI_WRITE, DRAG_FLAG_OPAQUE, DRAWING_CACHE_QUALITY_AUTO, DRAWING_CACHE_QUALITY_HIGH, DRAWING_CACHE_QUALITY_LOW, EMPTY_STATE_SET, ENABLED_FOCUSED_SELECTED_STATE_SET, ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_FOCUSED_STATE_SET, ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, ENABLED_SELECTED_STATE_SET, ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, ENABLED_STATE_SET, ENABLED_WINDOW_FOCUSED_STATE_SET, FIND_VIEWS_WITH_CONTENT_DESCRIPTION, FIND_VIEWS_WITH_TEXT, FOCUS_BACKWARD, FOCUS_DOWN, FOCUS_FORWARD, FOCUS_LEFT, FOCUS_RIGHT, FOCUS_UP, FOCUSABLE, FOCUSABLE_AUTO, FOCUSABLES_ALL, FOCUSABLES_TOUCH_MODE, FOCUSED_SELECTED_STATE_SET, FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, FOCUSED_STATE_SET, FOCUSED_WINDOW_FOCUSED_STATE_SET, GONE, HAPTIC_FEEDBACK_ENABLED, IMPORTANT_FOR_ACCESSIBILITY_AUTO, IMPORTANT_FOR_ACCESSIBILITY_NO, IMPORTANT_FOR_ACCESSIBILITY_NO_HIDE_DESCENDANTS, IMPORTANT_FOR_ACCESSIBILITY_YES, IMPORTANT_FOR_AUTOFILL_AUTO, IMPORTANT_FOR_AUTOFILL_NO, IMPORTANT_FOR_AUTOFILL_NO_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_AUTOFILL_YES, IMPORTANT_FOR_AUTOFILL_YES_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_CONTENT_CAPTURE_AUTO, IMPORTANT_FOR_CONTENT_CAPTURE_NO, IMPORTANT_FOR_CONTENT_CAPTURE_NO_EXCLUDE_DESCENDANTS, IMPORTANT_FOR_CONTENT_CAPTURE_YES, IMPORTANT_FOR_CONTENT_CAPTURE_YES_EXCLUDE_DESCENDANTS, INVISIBLE, KEEP_SCREEN_ON, LAYER_TYPE_HARDWARE, LAYER_TYPE_NONE, LAYER_TYPE_SOFTWARE, LAYOUT_DIRECTION_INHERIT, LAYOUT_DIRECTION_LOCALE, LAYOUT_DIRECTION_LTR, LAYOUT_DIRECTION_RTL, MEASURED_HEIGHT_STATE_SHIFT, MEASURED_SIZE_MASK, MEASURED_STATE_MASK, MEASURED_STATE_TOO_SMALL, NO_ID, NOT_FOCUSABLE, OVER_SCROLL_ALWAYS, OVER_SCROLL_IF_CONTENT_SCROLLS, OVER_SCROLL_NEVER, PRESSED_ENABLED_FOCUSED_SELECTED_STATE_SET, PRESSED_ENABLED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_STATE_SET, PRESSED_ENABLED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_SELECTED_STATE_SET, PRESSED_ENABLED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_ENABLED_STATE_SET, PRESSED_ENABLED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_SELECTED_STATE_SET, PRESSED_FOCUSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_FOCUSED_STATE_SET, PRESSED_FOCUSED_WINDOW_FOCUSED_STATE_SET, PRESSED_SELECTED_STATE_SET, PRESSED_SELECTED_WINDOW_FOCUSED_STATE_SET, PRESSED_STATE_SET, PRESSED_WINDOW_FOCUSED_STATE_SET, ROTATION, ROTATION_X, ROTATION_Y, SCALE_X, SCALE_Y, SCREEN_STATE_OFF, SCREEN_STATE_ON, SCROLL_AXIS_HORIZONTAL, SCROLL_AXIS_NONE, SCROLL_AXIS_VERTICAL, SCROLL_CAPTURE_HINT_AUTO, SCROLL_CAPTURE_HINT_EXCLUDE, SCROLL_CAPTURE_HINT_EXCLUDE_DESCENDANTS, SCROLL_CAPTURE_HINT_INCLUDE, SCROLL_INDICATOR_BOTTOM, SCROLL_INDICATOR_END, SCROLL_INDICATOR_LEFT, SCROLL_INDICATOR_RIGHT, SCROLL_INDICATOR_START, SCROLL_INDICATOR_TOP, SCROLLBAR_POSITION_DEFAULT, SCROLLBAR_POSITION_LEFT, SCROLLBAR_POSITION_RIGHT, SCROLLBARS_INSIDE_INSET, SCROLLBARS_INSIDE_OVERLAY, SCROLLBARS_OUTSIDE_INSET, SCROLLBARS_OUTSIDE_OVERLAY, SELECTED_STATE_SET, SELECTED_WINDOW_FOCUSED_STATE_SET, SOUND_EFFECTS_ENABLED, STATUS_BAR_HIDDEN, STATUS_BAR_VISIBLE, SYSTEM_UI_FLAG_FULLSCREEN, SYSTEM_UI_FLAG_HIDE_NAVIGATION, SYSTEM_UI_FLAG_IMMERSIVE, SYSTEM_UI_FLAG_IMMERSIVE_STICKY, SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN, SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION, SYSTEM_UI_FLAG_LAYOUT_STABLE, SYSTEM_UI_FLAG_LIGHT_NAVIGATION_BAR, SYSTEM_UI_FLAG_LIGHT_STATUS_BAR, SYSTEM_UI_FLAG_LOW_PROFILE, SYSTEM_UI_FLAG_VISIBLE, SYSTEM_UI_LAYOUT_FLAGS, TEXT_ALIGNMENT_CENTER, TEXT_ALIGNMENT_GRAVITY, TEXT_ALIGNMENT_INHERIT, TEXT_ALIGNMENT_TEXT_END, TEXT_ALIGNMENT_TEXT_START, TEXT_ALIGNMENT_VIEW_END, TEXT_ALIGNMENT_VIEW_START, TEXT_DIRECTION_ANY_RTL, TEXT_DIRECTION_FIRST_STRONG, TEXT_DIRECTION_FIRST_STRONG_LTR, TEXT_DIRECTION_FIRST_STRONG_RTL, TEXT_DIRECTION_INHERIT, TEXT_DIRECTION_LOCALE, TEXT_DIRECTION_LTR, TEXT_DIRECTION_RTL, TRANSLATION_X, TRANSLATION_Y, TRANSLATION_Z, VIEW_LOG_TAG, VISIBLE, WINDOW_FOCUSED_STATE_SET, X, Y, Z
-
-
Method Summary
All Methods Instance Methods Abstract Methods Concrete Methods Deprecated Methods Modifier and Type Method Description void
addAttributionTextChangedListener(AttributionTextChangedListener listener)
Registers an AttributionTextChangedListener to be called when the attribution text of the GeoView changes, for example if a layer is removed or added the attribution text needs to update.void
addAttributionViewLayoutChangeListener(android.view.View.OnLayoutChangeListener layoutChangeListener)
Registers a listener that will be called when the bounds of the attribution view change due to expanding or collapsing.void
addDrawStatusChangedListener(DrawStatusChangedListener listener)
Registers a DrawStatusChangedListener to be called when the DrawStatus of the MapView changes, for example when the map initially finishes loading, or tiles and features are finished loading after map navigation.void
addLayerViewStateChangedListener(LayerViewStateChangedListener listener)
Register a LayerViewStateChangedListener to be called when the view state of any layer in the map changes, for example if a layer goes in or out of visible scale range, or is made visible or not visible.void
addNavigationChangedListener(NavigationChangedListener listener)
Adds a NavigationChangedListener to be called when the navigation state of this view has changed.void
addSpatialReferenceChangedListener(SpatialReferenceChangedListener listener)
Registers a SpatialReferenceChangedListener to be called when the SpatialReference of the MapView changes, for example if a new ArcGISMap with a different SpatialReference is loaded.void
addTimeExtentChangedListener(TimeExtentChangedListener listener)
Registers aTimeExtentChangedListener
to be called when the time extent of the GeoView changes.void
addViewpointChangedListener(ViewpointChangedListener listener)
Registers a ViewpointChangedListener to be called when the Viewpoint of the GeoView changes, for example when the ArcGISMap is navigated interactively by the user, or programmatically by calling a setViewpoint method.void
collapseAttributionBar()
Collapses the attribution bar if it is expanded.abstract void
dispose()
Releases resources.ListenableFuture<android.graphics.Bitmap>
exportImageAsync()
Asynchronously exports the GeoView into a Bitmap.java.lang.String
getAttributionText()
Gets a concatenated string with attribution text for all layers.Viewpoint
getCurrentViewpoint(Viewpoint.Type viewpointType)
Gets a Viewpoint of the given Viewpoint.Type, describing the visible area and view location of the map.DrawStatus
getDrawStatus()
Returns the current draw status.ListenableList<GraphicsOverlay>
getGraphicsOverlays()
Gets a modifiable listenable list of the graphics overlays.ViewLabelProperties
getLabeling()
Gets the view label properties.java.util.EnumSet<LayerViewStatus>
getLayerViewState(Layer layer)
Deprecated.since 100.10.0.SelectionProperties
getSelectionProperties()
Returns the selection properties that are applied to a GeoView.abstract SpatialReference
getSpatialReference()
Gets the SpatialReference of this GeoView.TimeExtent
getTimeExtent()
Gets the current time extent.LayerViewState
getViewStateForLayer(Layer layer)
Retrieve the layer's view state.ListenableFuture<IdentifyGraphicsOverlayResult>
identifyGraphicsOverlayAsync(GraphicsOverlay graphicsOverlay, android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly)
Asynchronously identifies the topmost visible graphic in the given graphics overlay, at the given screen point.ListenableFuture<IdentifyGraphicsOverlayResult>
identifyGraphicsOverlayAsync(GraphicsOverlay graphicsOverlay, android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly, int maximumResults)
Asynchronously identifies the visible graphics in the given graphics overlay, at the given screen point.ListenableFuture<java.util.List<IdentifyGraphicsOverlayResult>>
identifyGraphicsOverlaysAsync(android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly)
Asynchronously identifies the topmost visible graphic in each graphics overlay in this view, at the given screen point.ListenableFuture<java.util.List<IdentifyGraphicsOverlayResult>>
identifyGraphicsOverlaysAsync(android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly, int maximumResults)
Asynchronously identifies the visible graphics at the given screen point in all graphics overlays in this view.ListenableFuture<IdentifyLayerResult>
identifyLayerAsync(Layer layer, android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly)
Asynchronously identifies the topmost visible GeoElement in the given layer.ListenableFuture<IdentifyLayerResult>
identifyLayerAsync(Layer layer, android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly, int maximumResults)
Asynchronously identifies GeoElements in the given layer.ListenableFuture<java.util.List<IdentifyLayerResult>>
identifyLayersAsync(android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly)
Asynchronously identifies the topmost visible GeoElement in each identifiable layer in the map.ListenableFuture<java.util.List<IdentifyLayerResult>>
identifyLayersAsync(android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly, int maximumResults)
Asynchronously identifies GeoElements on all identifiable layers in the map.boolean
isAttributionTextVisible()
Indicates whether the Esri attribution text is visible or not.boolean
isNavigating()
Indicates if the viewpoint of the map is currently being changed.boolean
isWrapAroundEnabled()
Indicates whether wrap around map display is enabled or not.abstract void
pause()
Pauses the drawing of the GeoView.boolean
removeAttributionTextChangedListener(AttributionTextChangedListener listener)
Unregisters an AttributionTextChangedListener that was previously added usingaddAttributionTextChangedListener(AttributionTextChangedListener)
.void
removeAttributionViewLayoutChangeListener(android.view.View.OnLayoutChangeListener layoutChangeListener)
Unregisters a listener for the attribution view layout changes.boolean
removeDrawStatusChangedListener(DrawStatusChangedListener listener)
Unregisters the given DrawStatusChangedListener that was previously added usingaddDrawStatusChangedListener(DrawStatusChangedListener)
.boolean
removeLayerViewStateChangedListener(LayerViewStateChangedListener listener)
Unregisters the given LayerViewStateChangedListener that was previously added usingaddLayerViewStateChangedListener(LayerViewStateChangedListener)
.boolean
removeNavigationChangedListener(NavigationChangedListener listener)
Unregisters the given NavigationChangedListener that was previously added usingaddNavigationChangedListener(NavigationChangedListener)
.boolean
removeSpatialReferenceChangedListener(SpatialReferenceChangedListener listener)
Unregisters the given SpatialReferenceChangedListener that was previously added usingaddSpatialReferenceChangedListener(SpatialReferenceChangedListener)
.boolean
removeTimeExtentChangedListener(TimeExtentChangedListener listener)
Unregisters aTimeExtentChangedListener
that was previously added usingaddTimeExtentChangedListener(TimeExtentChangedListener)
.boolean
removeViewpointChangedListener(ViewpointChangedListener listener)
Unregisters a ViewpointChangedListener that was previously added usingaddViewpointChangedListener(ViewpointChangedListener)
.abstract void
resume()
Resumes the drawing of the GeoView that has been paused, restarting the display of the contained ArcGISMap.void
setAttributionTextVisible(boolean visible)
Sets the visibility of the Esri attribution text, this is visible by default.ListenableFuture<java.lang.Boolean>
setBookmarkAsync(Bookmark bookmark)
Asynchronously sets the bookmark, which consequently applies the viewpoint within the bookmark to the GeoView.void
setLabeling(ViewLabelProperties viewLabelProperties)
Sets the view label properties.void
setTimeExtent(TimeExtent timeExtent)
Sets the time extent of the GeoView.void
setViewpoint(Viewpoint viewpoint)
Zooms and/or pans the map to the given Viewpoint.ListenableFuture<java.lang.Boolean>
setViewpointAsync(Viewpoint viewpoint)
Asynchronously zooms and/or pans the map or scene to the given Viewpoint.ListenableFuture<java.lang.Boolean>
setViewpointAsync(Viewpoint viewpoint, float durationSeconds)
Asynchronously zooms and/or pans the map or scene to the given Viewpoint, taking the given number of seconds to complete the navigation.-
Methods inherited from class android.view.ViewGroup
addChildrenForAccessibility, addExtraDataToAccessibilityNodeInfo, addFocusables, addKeyboardNavigationClusters, addStatesFromChildren, addTouchables, addView, addView, addView, addView, addView, addViewInLayout, addViewInLayout, attachLayoutAnimationParameters, attachViewToParent, bringChildToFront, canAnimate, checkLayoutParams, childDrawableStateChanged, childHasTransientStateChanged, cleanupLayoutState, clearChildFocus, clearDisappearingChildren, clearFocus, debug, detachAllViewsFromParent, detachViewFromParent, detachViewFromParent, detachViewsFromParent, dispatchApplyWindowInsets, dispatchCapturedPointerEvent, dispatchConfigurationChanged, dispatchCreateViewTranslationRequest, dispatchDisplayHint, dispatchDragEvent, dispatchDraw, dispatchDrawableHotspotChanged, dispatchFinishTemporaryDetach, dispatchFreezeSelfOnly, dispatchGenericFocusedEvent, dispatchGenericPointerEvent, dispatchHoverEvent, dispatchKeyEvent, dispatchKeyEventPreIme, dispatchKeyShortcutEvent, dispatchPointerCaptureChanged, dispatchProvideAutofillStructure, dispatchProvideStructure, dispatchRestoreInstanceState, dispatchSaveInstanceState, dispatchScrollCaptureSearch, dispatchSetActivated, dispatchSetPressed, dispatchSetSelected, dispatchStartTemporaryDetach, dispatchSystemUiVisibilityChanged, dispatchThawSelfOnly, dispatchTouchEvent, dispatchTrackballEvent, dispatchUnhandledMove, dispatchVisibilityChanged, dispatchWindowFocusChanged, dispatchWindowInsetsAnimationEnd, dispatchWindowInsetsAnimationPrepare, dispatchWindowInsetsAnimationProgress, dispatchWindowInsetsAnimationStart, dispatchWindowSystemUiVisiblityChanged, dispatchWindowVisibilityChanged, drawableStateChanged, drawChild, endViewTransition, findFocus, findViewsWithText, focusableViewAvailable, focusSearch, gatherTransparentRegion, generateDefaultLayoutParams, generateLayoutParams, generateLayoutParams, getAccessibilityClassName, getChildAt, getChildCount, getChildDrawingOrder, getChildDrawingOrder, getChildMeasureSpec, getChildStaticTransformation, getChildVisibleRect, getClipChildren, getClipToPadding, getDescendantFocusability, getFocusedChild, getLayoutAnimation, getLayoutAnimationListener, getLayoutMode, getLayoutTransition, getNestedScrollAxes, getOverlay, getPersistentDrawingCache, getTouchscreenBlocksFocus, hasFocus, hasTransientState, indexOfChild, invalidateChild, invalidateChildInParent, isAlwaysDrawnWithCacheEnabled, isAnimationCacheEnabled, isChildrenDrawingOrderEnabled, isChildrenDrawnWithCacheEnabled, isLayoutSuppressed, isMotionEventSplittingEnabled, isTransitionGroup, jumpDrawablesToCurrentState, layout, measureChild, measureChildren, measureChildWithMargins, notifySubtreeAccessibilityStateChanged, offsetDescendantRectToMyCoords, offsetRectIntoDescendantCoords, onAttachedToWindow, onCreateDrawableState, onDescendantInvalidated, onDetachedFromWindow, onInterceptHoverEvent, onInterceptTouchEvent, onLayout, onNestedFling, onNestedPreFling, onNestedPrePerformAccessibilityAction, onNestedPreScroll, onNestedScroll, onNestedScrollAccepted, onRequestFocusInDescendants, onRequestSendAccessibilityEvent, onResolvePointerIcon, onStartNestedScroll, onStopNestedScroll, onViewAdded, onViewRemoved, recomputeViewAttributes, removeAllViews, removeAllViewsInLayout, removeDetachedView, removeView, removeViewAt, removeViewInLayout, removeViews, removeViewsInLayout, requestChildFocus, requestChildRectangleOnScreen, requestDisallowInterceptTouchEvent, requestFocus, requestSendAccessibilityEvent, requestTransparentRegion, restoreDefaultFocus, scheduleLayoutAnimation, setAddStatesFromChildren, setAlwaysDrawnWithCacheEnabled, setAnimationCacheEnabled, setChildrenDrawingCacheEnabled, setChildrenDrawingOrderEnabled, setChildrenDrawnWithCacheEnabled, setClipChildren, setClipToPadding, setDescendantFocusability, setLayoutAnimation, setLayoutAnimationListener, setLayoutMode, setLayoutTransition, setMotionEventSplittingEnabled, setOnHierarchyChangeListener, setPersistentDrawingCache, setStaticTransformationsEnabled, setTouchscreenBlocksFocus, setTransitionGroup, setWindowInsetsAnimationCallback, shouldDelayChildPressedState, showContextMenuForChild, showContextMenuForChild, startActionModeForChild, startActionModeForChild, startLayoutAnimation, startViewTransition, suppressLayout, updateViewLayout
-
Methods inherited from class android.view.View
addFocusables, addOnAttachStateChangeListener, addOnLayoutChangeListener, addOnUnhandledKeyEventListener, animate, announceForAccessibility, autofill, autofill, awakenScrollBars, awakenScrollBars, awakenScrollBars, bringToFront, buildDrawingCache, buildDrawingCache, buildLayer, callOnClick, cancelDragAndDrop, cancelLongPress, cancelPendingInputEvents, canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, canScrollHorizontally, canScrollVertically, checkInputConnectionProxy, clearAnimation, clearViewTranslationCallback, combineMeasuredStates, computeHorizontalScrollExtent, computeHorizontalScrollOffset, computeHorizontalScrollRange, computeScroll, computeSystemWindowInsets, computeVerticalScrollExtent, computeVerticalScrollOffset, computeVerticalScrollRange, createAccessibilityNodeInfo, createContextMenu, destroyDrawingCache, dispatchGenericMotionEvent, dispatchNestedFling, dispatchNestedPreFling, dispatchNestedPrePerformAccessibilityAction, dispatchNestedPreScroll, dispatchNestedScroll, dispatchPopulateAccessibilityEvent, draw, drawableHotspotChanged, findViewById, findViewWithTag, fitSystemWindows, focusSearch, forceHasOverlappingRendering, forceLayout, generateDisplayHash, generateViewId, getAccessibilityDelegate, getAccessibilityLiveRegion, getAccessibilityNodeProvider, getAccessibilityPaneTitle, getAccessibilityTraversalAfter, getAccessibilityTraversalBefore, getAlpha, getAnimation, getAnimationMatrix, getApplicationWindowToken, getAttributeResolutionStack, getAttributeSourceResourceMap, getAutofillHints, getAutofillId, getAutofillType, getAutofillValue, getBackground, getBackgroundTintBlendMode, getBackgroundTintList, getBackgroundTintMode, getBaseline, getBottom, getBottomFadingEdgeStrength, getBottomPaddingOffset, getCameraDistance, getClipBounds, getClipBounds, getClipToOutline, getContentCaptureSession, getContentDescription, getContext, getContextMenuInfo, getDefaultFocusHighlightEnabled, getDefaultSize, getDisplay, getDrawableState, getDrawingCache, getDrawingCache, getDrawingCacheBackgroundColor, getDrawingCacheQuality, getDrawingRect, getDrawingTime, getElevation, getExplicitStyle, getFilterTouchesWhenObscured, getFitsSystemWindows, getFocusable, getFocusables, getFocusedRect, getForeground, getForegroundGravity, getForegroundTintBlendMode, getForegroundTintList, getForegroundTintMode, getGlobalVisibleRect, getGlobalVisibleRect, getHandler, getHasOverlappingRendering, getHeight, getHitRect, getHorizontalFadingEdgeLength, getHorizontalScrollbarHeight, getHorizontalScrollbarThumbDrawable, getHorizontalScrollbarTrackDrawable, getId, getImportantForAccessibility, getImportantForAutofill, getImportantForContentCapture, getKeepScreenOn, getKeyDispatcherState, getLabelFor, getLayerType, getLayoutDirection, getLayoutParams, getLeft, getLeftFadingEdgeStrength, getLeftPaddingOffset, getLocalVisibleRect, getLocationInSurface, getLocationInWindow, getLocationOnScreen, getMatrix, getMeasuredHeight, getMeasuredHeightAndState, getMeasuredState, getMeasuredWidth, getMeasuredWidthAndState, getMinimumHeight, getMinimumWidth, getNextClusterForwardId, getNextFocusDownId, getNextFocusForwardId, getNextFocusLeftId, getNextFocusRightId, getNextFocusUpId, getOnFocusChangeListener, getOutlineAmbientShadowColor, getOutlineProvider, getOutlineSpotShadowColor, getOverScrollMode, getPaddingBottom, getPaddingEnd, getPaddingLeft, getPaddingRight, getPaddingStart, getPaddingTop, getParent, getParentForAccessibility, getPivotX, getPivotY, getPointerIcon, getReceiveContentMimeTypes, getResources, getRevealOnFocusHint, getRight, getRightFadingEdgeStrength, getRightPaddingOffset, getRootSurfaceControl, getRootView, getRootWindowInsets, getRotation, getRotationX, getRotationY, getScaleX, getScaleY, getScrollBarDefaultDelayBeforeFade, getScrollBarFadeDuration, getScrollBarSize, getScrollBarStyle, getScrollCaptureHint, getScrollIndicators, getScrollX, getScrollY, getSolidColor, getSourceLayoutResId, getStateDescription, getStateListAnimator, getSuggestedMinimumHeight, getSuggestedMinimumWidth, getSystemGestureExclusionRects, getSystemUiVisibility, getTag, getTag, getTextAlignment, getTextDirection, getTooltipText, getTop, getTopFadingEdgeStrength, getTopPaddingOffset, getTouchables, getTouchDelegate, getTransitionAlpha, getTransitionName, getTranslationX, getTranslationY, getTranslationZ, getUniqueDrawingId, getVerticalFadingEdgeLength, getVerticalScrollbarPosition, getVerticalScrollbarThumbDrawable, getVerticalScrollbarTrackDrawable, getVerticalScrollbarWidth, getViewTranslationResponse, getViewTreeObserver, getVisibility, getWidth, getWindowAttachCount, getWindowId, getWindowInsetsController, getWindowSystemUiVisibility, getWindowToken, getWindowVisibility, getWindowVisibleDisplayFrame, getX, getY, getZ, hasExplicitFocusable, hasFocusable, hasNestedScrollingParent, hasOnClickListeners, hasOnLongClickListeners, hasOverlappingRendering, hasPointerCapture, hasWindowFocus, inflate, invalidate, invalidate, invalidate, invalidateDrawable, invalidateOutline, isAccessibilityFocused, isAccessibilityHeading, isActivated, isAttachedToWindow, isClickable, isContextClickable, isDirty, isDrawingCacheEnabled, isDuplicateParentStateEnabled, isEnabled, isFocusable, isFocusableInTouchMode, isFocused, isFocusedByDefault, isForceDarkAllowed, isHapticFeedbackEnabled, isHardwareAccelerated, isHorizontalFadingEdgeEnabled, isHorizontalScrollBarEnabled, isHovered, isImportantForAccessibility, isImportantForAutofill, isImportantForContentCapture, isInEditMode, isInLayout, isInTouchMode, isKeyboardNavigationCluster, isLaidOut, isLayoutDirectionResolved, isLayoutRequested, isLongClickable, isNestedScrollingEnabled, isOpaque, isPaddingOffsetRequired, isPaddingRelative, isPivotSet, isPressed, isSaveEnabled, isSaveFromParentEnabled, isScreenReaderFocusable, isScrollbarFadingEnabled, isScrollContainer, isSelected, isShowingLayoutBounds, isShown, isSoundEffectsEnabled, isTemporarilyDetached, isTextAlignmentResolved, isTextDirectionResolved, isVerticalFadingEdgeEnabled, isVerticalScrollBarEnabled, isVisibleToUserForAutofill, keyboardNavigationClusterSearch, measure, mergeDrawableStates, offsetLeftAndRight, offsetTopAndBottom, onAnimationEnd, onAnimationStart, onApplyWindowInsets, onCancelPendingInputEvents, onCapturedPointerEvent, onCheckIsTextEditor, onConfigurationChanged, onCreateContextMenu, onCreateInputConnection, onCreateViewTranslationRequest, onCreateVirtualViewTranslationRequests, onDisplayHint, onDragEvent, onDraw, onDrawForeground, onDrawScrollBars, onFilterTouchEventForSecurity, onFinishInflate, onFinishTemporaryDetach, onFocusChanged, onGenericMotionEvent, onHoverChanged, onHoverEvent, onInitializeAccessibilityEvent, onInitializeAccessibilityNodeInfo, onKeyDown, onKeyLongPress, onKeyMultiple, onKeyPreIme, onKeyShortcut, onKeyUp, onMeasure, onOverScrolled, onPointerCaptureChange, onPopulateAccessibilityEvent, onProvideAutofillStructure, onProvideAutofillVirtualStructure, onProvideContentCaptureStructure, onProvideStructure, onProvideVirtualStructure, onReceiveContent, onRestoreInstanceState, onRtlPropertiesChanged, onSaveInstanceState, onScreenStateChanged, onScrollCaptureSearch, onScrollChanged, onSetAlpha, onSizeChanged, onStartTemporaryDetach, onTouchEvent, onTrackballEvent, onViewTranslationResponse, onVirtualViewTranslationResponses, onVisibilityAggregated, onVisibilityChanged, onWindowFocusChanged, onWindowSystemUiVisibilityChanged, onWindowVisibilityChanged, overScrollBy, performAccessibilityAction, performClick, performContextClick, performContextClick, performHapticFeedback, performHapticFeedback, performLongClick, performLongClick, performReceiveContent, playSoundEffect, post, postDelayed, postInvalidate, postInvalidate, postInvalidateDelayed, postInvalidateDelayed, postInvalidateOnAnimation, postInvalidateOnAnimation, postOnAnimation, postOnAnimationDelayed, refreshDrawableState, releasePointerCapture, removeCallbacks, removeOnAttachStateChangeListener, removeOnLayoutChangeListener, removeOnUnhandledKeyEventListener, requestApplyInsets, requestFitSystemWindows, requestFocus, requestFocus, requestFocusFromTouch, requestLayout, requestPointerCapture, requestRectangleOnScreen, requestRectangleOnScreen, requestUnbufferedDispatch, requestUnbufferedDispatch, requireViewById, resetPivot, resolveSize, resolveSizeAndState, restoreHierarchyState, saveAttributeDataForStyleable, saveHierarchyState, scheduleDrawable, scrollBy, scrollTo, sendAccessibilityEvent, sendAccessibilityEventUnchecked, setAccessibilityDelegate, setAccessibilityHeading, setAccessibilityLiveRegion, setAccessibilityPaneTitle, setAccessibilityTraversalAfter, setAccessibilityTraversalBefore, setActivated, setAllowClickWhenDisabled, setAlpha, setAnimation, setAnimationMatrix, setAutofillHints, setAutofillId, setBackground, setBackgroundColor, setBackgroundDrawable, setBackgroundResource, setBackgroundTintBlendMode, setBackgroundTintList, setBackgroundTintMode, setBottom, setCameraDistance, setClickable, setClipBounds, setClipToOutline, setContentCaptureSession, setContentDescription, setContextClickable, setDefaultFocusHighlightEnabled, setDrawingCacheBackgroundColor, setDrawingCacheEnabled, setDrawingCacheQuality, setDuplicateParentStateEnabled, setElevation, setEnabled, setFadingEdgeLength, setFilterTouchesWhenObscured, setFitsSystemWindows, setFocusable, setFocusable, setFocusableInTouchMode, setFocusedByDefault, setForceDarkAllowed, setForeground, setForegroundGravity, setForegroundTintBlendMode, setForegroundTintList, setForegroundTintMode, setHapticFeedbackEnabled, setHasTransientState, setHorizontalFadingEdgeEnabled, setHorizontalScrollBarEnabled, setHorizontalScrollbarThumbDrawable, setHorizontalScrollbarTrackDrawable, setHovered, setId, setImportantForAccessibility, setImportantForAutofill, setImportantForContentCapture, setKeepScreenOn, setKeyboardNavigationCluster, setLabelFor, setLayerPaint, setLayerType, setLayoutDirection, setLayoutParams, setLeft, setLeftTopRightBottom, setLongClickable, setMeasuredDimension, setMinimumHeight, setMinimumWidth, setNestedScrollingEnabled, setNextClusterForwardId, setNextFocusDownId, setNextFocusForwardId, setNextFocusLeftId, setNextFocusRightId, setNextFocusUpId, setOnApplyWindowInsetsListener, setOnCapturedPointerListener, setOnClickListener, setOnContextClickListener, setOnCreateContextMenuListener, setOnDragListener, setOnFocusChangeListener, setOnGenericMotionListener, setOnHoverListener, setOnKeyListener, setOnLongClickListener, setOnReceiveContentListener, setOnScrollChangeListener, setOnSystemUiVisibilityChangeListener, setOnTouchListener, setOutlineAmbientShadowColor, setOutlineProvider, setOutlineSpotShadowColor, setOverScrollMode, setPadding, setPaddingRelative, setPivotX, setPivotY, setPointerIcon, setPressed, setRenderEffect, setRevealOnFocusHint, setRight, setRotation, setRotationX, setRotationY, setSaveEnabled, setSaveFromParentEnabled, setScaleX, setScaleY, setScreenReaderFocusable, setScrollBarDefaultDelayBeforeFade, setScrollBarFadeDuration, setScrollbarFadingEnabled, setScrollBarSize, setScrollBarStyle, setScrollCaptureCallback, setScrollCaptureHint, setScrollContainer, setScrollIndicators, setScrollIndicators, setScrollX, setScrollY, setSelected, setSoundEffectsEnabled, setStateDescription, setStateListAnimator, setSystemGestureExclusionRects, setSystemUiVisibility, setTag, setTag, setTextAlignment, setTextDirection, setTooltipText, setTop, setTouchDelegate, setTransitionAlpha, setTransitionName, setTransitionVisibility, setTranslationX, setTranslationY, setTranslationZ, setVerticalFadingEdgeEnabled, setVerticalScrollBarEnabled, setVerticalScrollbarPosition, setVerticalScrollbarThumbDrawable, setVerticalScrollbarTrackDrawable, setViewTranslationCallback, setVisibility, setWillNotCacheDrawing, setWillNotDraw, setX, setY, setZ, showContextMenu, showContextMenu, startActionMode, startActionMode, startAnimation, startDrag, startDragAndDrop, startNestedScroll, stopNestedScroll, toString, transformMatrixToGlobal, transformMatrixToLocal, unscheduleDrawable, unscheduleDrawable, updateDragShadow, verifyDrawable, willNotCacheDrawing, willNotDraw
-
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface android.view.ViewParent
canResolveLayoutDirection, canResolveTextAlignment, canResolveTextDirection, createContextMenu, getLayoutDirection, getParent, getParentForAccessibility, getTextAlignment, getTextDirection, isLayoutDirectionResolved, isLayoutRequested, isTextAlignmentResolved, isTextDirectionResolved, keyboardNavigationClusterSearch, requestFitSystemWindows, requestLayout
-
-
-
-
Method Detail
-
getSpatialReference
public abstract SpatialReference getSpatialReference()
Gets the SpatialReference of this GeoView. TheSpatialReference
of a GeoView defines how the coordinates of the data correspond to locations in the real world.- Returns:
- the SpatialReference of this GeoView, can be null
- Since:
- 100.0.0
- See Also:
GeoModel.getSpatialReference()
,Layer.getSpatialReference()
-
getDrawStatus
public DrawStatus getDrawStatus()
Returns the current draw status.- Returns:
- the current draw status
- Since:
- 100.0.0
-
isAttributionTextVisible
public boolean isAttributionTextVisible()
Indicates whether the Esri attribution text is visible or not. The Esri attribution text is shown as a semi-transparent view at the bottom of the GeoView spanning its full width.- Returns:
- true if the attribution text is visible; false otherwise. Default it true.
- Since:
- 100.0.0
- See Also:
setAttributionTextVisible(boolean)
-
setAttributionTextVisible
public void setAttributionTextVisible(boolean visible)
Sets the visibility of the Esri attribution text, this is visible by default. The Esri attribution text is shown as a semi-transparent view at the base of the GeoView spanning its full width.- Parameters:
visible
- true to set attribution text visible; false otherwise- Since:
- 100.0.0
- See Also:
isAttributionTextVisible()
-
getAttributionText
public java.lang.String getAttributionText()
Gets a concatenated string with attribution text for all layers.- Returns:
- a concatenated string with attribution text for all layers
- Since:
- 100.1.0
-
isNavigating
public boolean isNavigating()
Indicates if the viewpoint of the map is currently being changed. Reflects both animation of programmatic changes to the map viewpoint, and user interaction with the map.- Returns:
- true, if this map is currently animating a viewpoint change, or a map navigation gesture is in progress; false otherwise
- Since:
- 100.0.0
-
isWrapAroundEnabled
public boolean isWrapAroundEnabled()
Indicates whether wrap around map display is enabled or not. When enabled, the map can be panned continuously across the anti-meridian, and the eastern and western hemispheres wrap to form a continuous map, giving the impression that the map is endless.To enable wrap around map display for a MapView, call
MapView.setWrapAroundMode(WrapAroundMode)
and pass inWrapAroundMode.ENABLE_WHEN_SUPPORTED
. Note that there are some requirements for the map in this case; seeWrapAroundMode.ENABLE_WHEN_SUPPORTED
for more information.Note that if wrap around display is enabled, geometries returned from
getVisibleArea
may have coordinates outside the domain of the spatial reference of the map. Before using such geometries to perform spatial queries, address finding, or as feature geometries in a geodatabase, they should benormalized
to lie within the spatial reference domain.- Returns:
- true if the map is currently displayed wrapped around; false otherwise
- Since:
- 100.0.0
- See Also:
MapView.getWrapAroundMode()
,MapView.setWrapAroundMode(WrapAroundMode)
-
setViewpoint
public void setViewpoint(Viewpoint viewpoint)
Zooms and/or pans the map to the given Viewpoint. This method does not use animation - the viewpoint is updated instantaneously.- Parameters:
viewpoint
- the new Viewpoint- Throws:
java.lang.IllegalArgumentException
- if the argument is null- Since:
- 100.0.0
-
setViewpointAsync
public ListenableFuture<java.lang.Boolean> setViewpointAsync(Viewpoint viewpoint)
Asynchronously zooms and/or pans the map or scene to the given Viewpoint. This method uses the standard animation duration; alternatively usesetViewpointAsync(Viewpoint, float)
to control the animation duration.- Parameters:
viewpoint
- the new Viewpoint- Returns:
- a ListenableFuture representing the result of the Viewpoint change. Add a listener to the future to be notified when animation is finished. The result of the future indicates if the operation completed successfully.
- Throws:
java.lang.IllegalArgumentException
- if the argument is null- Since:
- 100.0.0
-
setViewpointAsync
public ListenableFuture<java.lang.Boolean> setViewpointAsync(Viewpoint viewpoint, float durationSeconds)
Asynchronously zooms and/or pans the map or scene to the given Viewpoint, taking the given number of seconds to complete the navigation. Alternatively usesetViewpointAsync(Viewpoint)
to use the standard duration.- Parameters:
viewpoint
- the new ViewpointdurationSeconds
- the duration of the animation to the new Viewpoint, in seconds- Returns:
- a ListenableFuture representing the result of the Viewpoint change. Add a listener to the future to be notified when animation is finished. The result of the future indicates if the operation completed successfully.
- Throws:
java.lang.IllegalArgumentException
- if viewpoint is null- Since:
- 100.0.0
-
getCurrentViewpoint
public Viewpoint getCurrentViewpoint(Viewpoint.Type viewpointType)
Gets a Viewpoint of the given Viewpoint.Type, describing the visible area and view location of the map.Not all types of Viewpoint are applicable to all subtypes of GeoView; Type.CAMERA is not applicable to the MapView for example.
- Parameters:
viewpointType
- the type of Viewpoint to return- Returns:
- the requested type of Viewpoint
- Throws:
java.lang.IllegalArgumentException
- if the argument is null- Since:
- 100.0.0
-
getViewStateForLayer
public LayerViewState getViewStateForLayer(Layer layer)
Retrieve the layer's view state.- Parameters:
layer
- a layer object for which to get the view state- Throws:
ArcGISRuntimeException
- if layer isn't foundjava.lang.IllegalArgumentException
- if layer is null- Since:
- 100.10.0
-
getLayerViewState
@Deprecated public java.util.EnumSet<LayerViewStatus> getLayerViewState(Layer layer)
Deprecated.since 100.10.0. UsegetViewStateForLayer(Layer)
instead.Returns a set of view states that apply to the given layer. This can be used, for example, to report layer status in a map legend or table of contents.Each layer may have more than one view status; for example, a layer may be
LOADING
, and thereforeNOT_VISIBLE
, or may beNOT_VISIBLE
because it is currentlyOUT_OF_SCALE
. If the layer isACTIVE
, this can be combined withLayerViewStatus.WARNING
. For child layers of group layers, the parent layers status is taken into account.- Parameters:
layer
- the layer- Returns:
- the layer view status(es) which apply to the given layer
- Throws:
java.lang.IllegalArgumentException
- if the argument is null- Since:
- 100.0.0
-
addDrawStatusChangedListener
public void addDrawStatusChangedListener(DrawStatusChangedListener listener)
Registers a DrawStatusChangedListener to be called when the DrawStatus of the MapView changes, for example when the map initially finishes loading, or tiles and features are finished loading after map navigation.To find out about viewing status changes of specific layers, use the
addLayerViewStateChangedListener(LayerViewStateChangedListener)
method instead.This listener will be invoked on the UI thread if it is added from the UI thread, otherwise it is not guaranteed on which thread the listener is invoked.
- Parameters:
listener
- the listener to register- Throws:
java.lang.NullPointerException
- if the argument is null- Since:
- 100.0.0
- See Also:
removeDrawStatusChangedListener(DrawStatusChangedListener)
-
removeDrawStatusChangedListener
public boolean removeDrawStatusChangedListener(DrawStatusChangedListener listener)
Unregisters the given DrawStatusChangedListener that was previously added usingaddDrawStatusChangedListener(DrawStatusChangedListener)
.- Parameters:
listener
- the listener to unregister- Returns:
- true if the listener was successfully removed; false otherwise
- Throws:
java.lang.NullPointerException
- if the argument is null- Since:
- 100.0.0
-
addSpatialReferenceChangedListener
public void addSpatialReferenceChangedListener(SpatialReferenceChangedListener listener)
Registers a SpatialReferenceChangedListener to be called when the SpatialReference of the MapView changes, for example if a new ArcGISMap with a different SpatialReference is loaded.This listener will be invoked on the UI thread if it is added from the UI thread, otherwise it is not guaranteed on which thread the listener is invoked.
- Parameters:
listener
- the listener to register- Throws:
java.lang.NullPointerException
- if the argument is null- Since:
- 100.0.0
- See Also:
removeSpatialReferenceChangedListener(SpatialReferenceChangedListener)
,getSpatialReference()
-
removeSpatialReferenceChangedListener
public boolean removeSpatialReferenceChangedListener(SpatialReferenceChangedListener listener)
Unregisters the given SpatialReferenceChangedListener that was previously added usingaddSpatialReferenceChangedListener(SpatialReferenceChangedListener)
.- Parameters:
listener
- the listener to unregister- Returns:
- true if the listener was successfully removed; false otherwise
- Throws:
java.lang.NullPointerException
- if the listener is null- Since:
- 100.0.0
-
addNavigationChangedListener
public void addNavigationChangedListener(NavigationChangedListener listener)
Adds a NavigationChangedListener to be called when the navigation state of this view has changed.As this listener will be called less frequently than the
ViewpointChangedListener
, you can use this to perform operations that are more expensive extent-based operations; note however that navigation may begin again at any time. This method is called whenisNavigating()
changes.This listener will be invoked on the UI thread if it is added from the UI thread, otherwise it is not guaranteed on which thread the listener is invoked.
- Parameters:
listener
- the listener to register- Throws:
java.lang.NullPointerException
- if the argument is null- Since:
- 100.0.0
- See Also:
removeNavigationChangedListener(NavigationChangedListener)
-
removeNavigationChangedListener
public boolean removeNavigationChangedListener(NavigationChangedListener listener)
Unregisters the given NavigationChangedListener that was previously added usingaddNavigationChangedListener(NavigationChangedListener)
.- Parameters:
listener
- the listener to unregister- Returns:
- true if the listener was successfully removed; false otherwise
- Since:
- 100.0.0
-
addLayerViewStateChangedListener
public void addLayerViewStateChangedListener(LayerViewStateChangedListener listener)
Register a LayerViewStateChangedListener to be called when the view state of any layer in the map changes, for example if a layer goes in or out of visible scale range, or is made visible or not visible.To find out about the drawing status changes of the entire map, use the
addDrawStatusChangedListener(DrawStatusChangedListener)
method instead.This listener will be invoked on the UI thread if it is added from the UI thread, otherwise it is not guaranteed on which thread the listener is invoked.
- Parameters:
listener
- the listener to register- Throws:
java.lang.NullPointerException
- if the argument is null- Since:
- 100.0.0
- See Also:
removeLayerViewStateChangedListener(LayerViewStateChangedListener)
-
removeLayerViewStateChangedListener
public boolean removeLayerViewStateChangedListener(LayerViewStateChangedListener listener)
Unregisters the given LayerViewStateChangedListener that was previously added usingaddLayerViewStateChangedListener(LayerViewStateChangedListener)
.- Parameters:
listener
- the listener to unregister- Returns:
- true if the listener was successfully removed; false otherwise
- Throws:
java.lang.NullPointerException
- if the argument is null- Since:
- 100.0.0
-
addViewpointChangedListener
public void addViewpointChangedListener(ViewpointChangedListener listener)
Registers a ViewpointChangedListener to be called when the Viewpoint of the GeoView changes, for example when the ArcGISMap is navigated interactively by the user, or programmatically by calling a setViewpoint method.This listener may be called very frequently, therefore should perform only very short operations. If more extensive work is required, consider using
NavigationChangedListener
instead.This listener will be invoked on the UI thread if it is added from the UI thread, otherwise it is not guaranteed on which thread the listener is invoked.
- Parameters:
listener
- the listener to register- Throws:
java.lang.IllegalArgumentException
- if the argument is null- Since:
- 100.0.0
- See Also:
removeViewpointChangedListener(ViewpointChangedListener)
-
removeViewpointChangedListener
public boolean removeViewpointChangedListener(ViewpointChangedListener listener)
Unregisters a ViewpointChangedListener that was previously added usingaddViewpointChangedListener(ViewpointChangedListener)
.- Parameters:
listener
- the listener to unregister- Returns:
- true if the listener was successfully removed; false otherwise
- Since:
- 100.0.0
-
addAttributionTextChangedListener
public void addAttributionTextChangedListener(AttributionTextChangedListener listener)
Registers an AttributionTextChangedListener to be called when the attribution text of the GeoView changes, for example if a layer is removed or added the attribution text needs to update.This listener will be invoked on the UI thread if it is added from the UI thread, otherwise it is not guaranteed on which thread the listener is invoked.
- Parameters:
listener
- the listener to register- Throws:
java.lang.NullPointerException
- if the argument is null- Since:
- 100.1.0
- See Also:
removeAttributionTextChangedListener(AttributionTextChangedListener)
,getAttributionText()
-
removeAttributionTextChangedListener
public boolean removeAttributionTextChangedListener(AttributionTextChangedListener listener)
Unregisters an AttributionTextChangedListener that was previously added usingaddAttributionTextChangedListener(AttributionTextChangedListener)
.- Parameters:
listener
- the listener to unregister- Returns:
- true if the listener was successfully removed; false otherwise
- Throws:
java.lang.NullPointerException
- if the argument is null- Since:
- 100.1.0
-
addTimeExtentChangedListener
public void addTimeExtentChangedListener(TimeExtentChangedListener listener)
Registers aTimeExtentChangedListener
to be called when the time extent of the GeoView changes.This listener will be invoked on the UI thread if it is added from the UI thread, otherwise it is not guaranteed on which thread the listener is invoked.
- Parameters:
listener
- the listener to register- Throws:
java.lang.IllegalArgumentException
- if listener is null- Since:
- 100.10.0
-
removeTimeExtentChangedListener
public boolean removeTimeExtentChangedListener(TimeExtentChangedListener listener)
Unregisters aTimeExtentChangedListener
that was previously added usingaddTimeExtentChangedListener(TimeExtentChangedListener)
.- Parameters:
listener
- the listener to unregister- Returns:
- true if the listener was successfully removed; false otherwise
- Throws:
java.lang.IllegalArgumentException
- if listener is null- Since:
- 100.10.0
-
getGraphicsOverlays
public ListenableList<GraphicsOverlay> getGraphicsOverlays()
Gets a modifiable listenable list of the graphics overlays. Add or remove graphics overlays from this list to change the graphics overlays displayed. The list returned may be empty, but is never null.You can add listeners to the returned list to be notified when graphics overlays are added to, or removed from, this View. Use
identifyGraphicsOverlayAsync
to find the graphics at a specific screen location in a graphics overlay in this list.- Returns:
- the list of graphics overlays currently in this view
- Since:
- 100.0.0
-
identifyGraphicsOverlayAsync
public ListenableFuture<IdentifyGraphicsOverlayResult> identifyGraphicsOverlayAsync(GraphicsOverlay graphicsOverlay, android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly, int maximumResults)
Asynchronously identifies the visible graphics in the given graphics overlay, at the given screen point.As locations from user gestures are not always accurate to the exact pixel, a tolerance for the identify can be defined. The tolerance parameter indicates the radius of a circle, centered at screenPoint, in density-independent pixels (dp). The results returned will include any visible graphics that, when rendered with the appropriate symbols, intersect this circle, up to the maximumResults parameter limit.
The identified graphic(s) are returned from
IdentifyGraphicsOverlayResult.getGraphics()
, subject to thereturnPopupsOnly
parameter. If the overlay is an enabledPopupSource
, then theIdentifyGraphicsOverlayResult.getPopups()
list will also contain pop-ups.- Parameters:
graphicsOverlay
- the graphics overlay in which to identify graphicsscreenPoint
- the screen point at which to identify graphicstolerance
- the radius in density-independent pixels (dp) of a circle centered at screenPoint within which to identify graphics. A value of 0 will identify only the graphics at the physical pixel at screenPoint. The maximum allowed value is 100dp, resulting in an identify circle of diameter 200 dp.returnPopupsOnly
- true to include pop-ups but no graphics in the identify results; if the overlay does not have pop-ups, an error will be returned. False to include both graphics and pop-ups.maximumResults
- the maximum number of graphics and/or pop-ups to be returned; must be greater than zero with the exception that -1 can be used to indicate unlimited results- Returns:
- a ListenableFuture for tracking when the operation is done and getting the result; Add a listener to the future to be notified when the identify operation is complete. The result of the future is an IdentifyGraphicsOverlayResult object if the operation completed successfully
- Throws:
java.lang.IllegalArgumentException
- if- graphicsOverlay is null
- screenPoint is null
- tolerance less than zero or greater than 100
- maximumResults is zero or less than -1
ArcGISRuntimeException
- if screenPoint translates to a point outside the current Viewpoint of this GeoView- Since:
- 100.0.0
-
identifyGraphicsOverlayAsync
public ListenableFuture<IdentifyGraphicsOverlayResult> identifyGraphicsOverlayAsync(GraphicsOverlay graphicsOverlay, android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly)
Asynchronously identifies the topmost visible graphic in the given graphics overlay, at the given screen point.As locations from user gestures are not always accurate to the exact pixel, a tolerance for the identify can be defined. The tolerance parameter indicates the radius of a circle, centered at screenPoint, in density-independent pixels (dp). The result returned will include the topmost visible graphic that, when rendered with the appropriate symbol, intersects this circle.
The identified graphic is returned from
IdentifyGraphicsOverlayResult.getGraphics()
, subject to thereturnPopupsOnly
parameter. If the overlay is an enabledPopupSource
, then theIdentifyGraphicsOverlayResult.getPopups()
list will also contain a pop-up.- Parameters:
graphicsOverlay
- the graphics overlay in which to identify the graphicscreenPoint
- the screen point in pixels at which to identify the graphictolerance
- the radius in density-independent pixels (dp) of a circle centered at screenPoint within which to identify graphics. A value of 0 will identify only the graphics at the physical pixel at screenPoint. The maximum allowed value is 100dp, resulting in an identify circle of diameter 200 dp.returnPopupsOnly
- true to include a pop-up but no graphic in the identify results; if the overlay does not have pop-ups, an error will be returned. False to include both a graphic and a pop-up.- Returns:
- a ListenableFuture for tracking when the operation is done and getting the result; Add a listener to the future to be notified when the identify operation is complete. The result of the future is an IdentifyGraphicsOverlayResult object if the operation completed successfully
- Throws:
java.lang.IllegalArgumentException
- if- graphicsOverlay is null
- screenPoint is null
- tolerance less than zero or greater than 100
ArcGISRuntimeException
- if screenPoint translates to a point outside the current Viewpoint of this GeoView- Since:
- 100.0.0
-
identifyGraphicsOverlaysAsync
public ListenableFuture<java.util.List<IdentifyGraphicsOverlayResult>> identifyGraphicsOverlaysAsync(android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly, int maximumResults)
Asynchronously identifies the visible graphics at the given screen point in all graphics overlays in this view.As locations from user gestures are not always accurate to the exact pixel, a tolerance for the identify can be defined. The tolerance parameter indicates the radius of a circle, centered at screenPoint, in density-independent pixels (dp). The results returned will include any visible graphics that, when rendered with the appropriate symbols, intersect this circle, up to the maximumResults parameter limit.
The identified graphic(s) are returned from
IdentifyGraphicsOverlayResult.getGraphics()
, subject to thereturnPopupsOnly
parameter. If an overlay is an enabledPopupSource
, then theIdentifyGraphicsOverlayResult.getPopups()
list for that overlay will also contain pop-ups.- Parameters:
screenPoint
- the screen point at which to identify graphicstolerance
- the radius in density-independent pixels (dp) of a circle centered at screenPoint within which to identify graphics. A value of 0 will identify only the graphics at the physical pixel at screenPoint. The maximum allowed value is 100dp, resulting in an identify circle of diameter 200 dp.returnPopupsOnly
- true to include pop-ups but no graphics in the identify results; overlays that have no pop-ups will be omitted. False to include both graphics and pop-ups.maximumResults
- the maximum number of graphics and/or pop-ups to be returned; must be greater than zero with the exception that -1 can be used to indicate unlimited results- Returns:
- a ListenableFuture for tracking when the operation is done and getting the result; Add a listener to the future to be notified when the identify operation is complete. The result of the future is a list of IdentifyGraphicsOverlayResult objects if the operation completed successfully. Results are returned in top-to-bottom order.
- Throws:
java.lang.IllegalArgumentException
- if- screenPoint is null
- tolerance less than zero or greater than 100
- maximumResults is zero or less than -1
ArcGISRuntimeException
- if screenPoint translates to a point outside the current Viewpoint of this GeoView- Since:
- 100.0.0
-
identifyGraphicsOverlaysAsync
public ListenableFuture<java.util.List<IdentifyGraphicsOverlayResult>> identifyGraphicsOverlaysAsync(android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly)
Asynchronously identifies the topmost visible graphic in each graphics overlay in this view, at the given screen point.As locations from user gestures are not always accurate to the exact pixel, a tolerance for the identify can be defined. The tolerance parameter indicates the radius of a circle, centered at screenPoint, in density-independent pixels (dp). The result returned will include the topmost visible graphic per graphics overlay that, when rendered with the appropriate symbol, intersects this circle.
The identified graphic is returned from
IdentifyGraphicsOverlayResult.getGraphics()
, subject to thereturnPopupsOnly
parameter. If an overlay is an enabledPopupSource
, then theIdentifyGraphicsOverlayResult.getPopups()
list will also contain a pop-up.- Parameters:
screenPoint
- the screen point at which to identify graphicstolerance
- the radius in density-independent pixels (dp) of a circle centered at screenPoint within which to identify graphics. A value of 0 will identify only the graphics at the physical pixel at screenPoint. The maximum allowed value is 100dp, resulting in an identify circle of diameter 200 dp.returnPopupsOnly
- true to include pop-ups but no graphics in the identify results; overlays that have no pop-ups will be omitted. False to include both graphics and pop-ups.- Returns:
- a ListenableFuture for tracking when the operation is done and getting the result; Add a listener to the future to be notified when the identify operation is complete. The result of the future is a list of IdentifyGraphicsOverlayResult objects if the operation completed successfully. Results are returned in top-to-bottom order.
- Throws:
java.lang.IllegalArgumentException
- if- screenPoint is null
- tolerance less than zero or greater than 100
ArcGISRuntimeException
- if screenPoint translates to a point outside the current Viewpoint of this GeoView- Since:
- 100.0.0
-
identifyLayerAsync
public ListenableFuture<IdentifyLayerResult> identifyLayerAsync(Layer layer, android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly)
Asynchronously identifies the topmost visible GeoElement in the given layer.As locations from user gestures are not always accurate to the exact pixel, a tolerance for the identify can be defined. The tolerance parameter indicates the radius of a circle, centered at screenPoint, in density-independent pixels (dp). The result returned will include the topmost visible GeoElement that, when rendered with the appropriate symbol, intersects this circle.
The identified geo-element is returned from
IdentifyLayerResult.getElements()
, subject to thereturnPopupsOnly
parameter. If the layer is an enabledPopupSource
, then theIdentifyLayerResult.getPopups()
list will also contain a pop-up.- Parameters:
layer
- layer searched in the identify operationscreenPoint
- the screen point to identify ontolerance
- the radius in density-independent pixels (dp) of a circle centered at screenPoint within which to identify GeoElements. A value of 0 will identify only the GeoElements at the physical pixel at screenPoint. The maximum allowed value is 100dp, resulting in an identify circle of diameter 200 dp.returnPopupsOnly
- true to include a pop-up but no geo-element in the identify results; if the layer has no pop-ups, an error will be returned. False to include both a geo-element and a pop-up.- Returns:
- a ListenableFuture that provides an IdentifyLayerResult upon successful completion of the async operation
- Throws:
java.lang.IllegalArgumentException
- if- layer is null
- screenPoint is null
- tolerance is less than zero or greater than 100
ArcGISRuntimeException
- if screenPoint translates to a point outside the current Viewpoint of this GeoView- Since:
- 100.0.0
- See Also:
IdentifyLayerResult
-
identifyLayerAsync
public ListenableFuture<IdentifyLayerResult> identifyLayerAsync(Layer layer, android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly, int maximumResults)
Asynchronously identifies GeoElements in the given layer.As locations from user gestures are not always accurate to the exact pixel, a tolerance for the identify can be defined. The tolerance parameter indicates the radius of a circle, centered at screenPoint, in density-independent pixels (dp). The results returned will include any visible GeoElements that, when rendered with the appropriate symbols, intersect this circle, up to the maximumResults parameter limit.
The identified geo-element is returned from
IdentifyLayerResult.getElements()
, subject to thereturnPopupsOnly
parameter. If the layer is an enabledPopupSource
, then theIdentifyLayerResult.getPopups()
list will also contain pop-ups.- Parameters:
layer
- layer searched in the identify operationscreenPoint
- the screen point to identify ontolerance
- the radius in density-independent pixels (dp) of a circle centered at screenPoint within which to identify GeoElements. A value of 0 will identify only the GeoElements at the physical pixel at screenPoint. The maximum allowed value is 100dp, resulting in an identify circle of diameter 200 dp.returnPopupsOnly
- true to include pop-ups but no geo-elements in the identify results; if the layer has no pop-ups, an error is returned. False to include both geo-elements and pop-ups.maximumResults
- the maximum number of geo-elements and/or pop-ups to be returned; must be greater than zero with the exception that -1 can be used to indicate unlimited results- Returns:
- a ListenableFuture that provides an IdentifyLayerResult upon successful completion of the async operation
- Throws:
java.lang.IllegalArgumentException
- if- layer is null
- screenPoint is null
- tolerance is less than zero or greater than 100
- maximumResults is zero or less than -1
ArcGISRuntimeException
- if screenPoint translates to a point outside the current Viewpoint of this GeoView- Since:
- 100.0.0
- See Also:
IdentifyLayerResult
-
identifyLayersAsync
public ListenableFuture<java.util.List<IdentifyLayerResult>> identifyLayersAsync(android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly)
Asynchronously identifies the topmost visible GeoElement in each identifiable layer in the map.As locations from user gestures are not always accurate to the exact pixel, a tolerance for the identify can be defined. The tolerance parameter indicates the radius of a circle, centered at screenPoint, in density-independent pixels (dp). The result returned will include the topmost visible GeoElement per layer that, when rendered with the appropriate symbol, intersects this circle.
The identified geo-element for each layer is returned from
IdentifyLayerResult.getElements()
, subject to thereturnPopupsOnly
parameter. If a layer is an enabledPopupSource
, then theIdentifyLayerResult.getPopups()
list will also contain a pop-up.- Parameters:
screenPoint
- the screen point to identify ontolerance
- the radius in density-independent pixels (dp) of a circle centered at screenPoint within which to identify geo-elements. A value of 0 will identify only the geo-element at the physical pixel at screenPoint. TThe maximum allowed value is 100dp, resulting in an identify circle of diameter 200 dp.returnPopupsOnly
- true to include a pop-up but no geo-element in the identify results for each layer; layers that have no pop-ups will be omitted. False to include both a geo-element and a pop-up.- Returns:
- a ListenableFuture that provides an unmodifiable list of IdentifyLayerResults upon successful completion of the async operation. The list contains an IdentifyLayerResult for each layer in which a geo-element was identified; layers with no identified geo-element are not represented in the list. Results are returned in top-to-bottom order.
- Throws:
java.lang.IllegalArgumentException
- if- screenPoint is null
- tolerance is less than zero or greater than 100
ArcGISRuntimeException
- if screenPoint translates to a point outside the current Viewpoint of this GeoView- Since:
- 100.0.0
- See Also:
IdentifyLayerResult
-
identifyLayersAsync
public ListenableFuture<java.util.List<IdentifyLayerResult>> identifyLayersAsync(android.graphics.Point screenPoint, double tolerance, boolean returnPopupsOnly, int maximumResults)
Asynchronously identifies GeoElements on all identifiable layers in the map.As locations from user gestures are not always accurate to the exact pixel, a tolerance for the identify can be defined. The tolerance parameter indicates the radius of a circle, centered at screenPoint, in density-independent pixels (dp). The results returned will include any visible GeoElements that, when rendered with the appropriate symbols, intersect this circle, up to the maximumResults parameter limit.
The identified geo-element(s) for each layer are returned from
IdentifyLayerResult.getElements()
, subject to thereturnPopupsOnly
parameter. If a layer is an enabledPopupSource
, then theIdentifyLayerResult.getPopups()
list will also contain pop-ups.- Parameters:
screenPoint
- the screen point to identify ontolerance
- the radius in density-independent pixels (dp) of a circle centered at screenPoint within which to identify GeoElements. A value of 0 will identify only the GeoElements at the physical pixel at screenPoint. The maximum allowed value is 100dp, resulting in an identify circle of diameter 200 dp.returnPopupsOnly
- true to include pop-ups but no geo-elements in the identify results; layers that have no pop-ups will be omitted. False to include both geo-elements and pop-ups.maximumResults
- the maximum number of geo-elements and/or pop-ups to be returned; must be greater than zero with the exception that -1 can be used to indicate unlimited results- Returns:
- a ListenableFuture that provides an unmodifiable list of IdentifyLayerResults upon successful completion of the async operation. The list contains an IdentifyLayerResult for each layer in which geo-elements were identified; layers with no identified geo-elements are not represented in the list. Results are returned in top-to-bottom order.
- Throws:
java.lang.IllegalArgumentException
- if- screenPoint is null
- tolerance is less than zero or greater than 100
- maximumResults is zero or less than -1
ArcGISRuntimeException
- if screenPoint translates to a point outside the current Viewpoint of this GeoView- Since:
- 100.0.0
- See Also:
IdentifyLayerResult
-
exportImageAsync
public ListenableFuture<android.graphics.Bitmap> exportImageAsync()
Asynchronously exports the GeoView into a Bitmap. The Bitmap will only contain content of an ArcGISMap or ArcGISScene that is currently visible. Elements drawn on top of the GeoView such as callouts will not be in the Bitmap.- Returns:
- a ListenableFuture that provides a Bitmap of current GeoView upon successful completion of the async operation
- Since:
- 100.0.0
-
setTimeExtent
public void setTimeExtent(TimeExtent timeExtent)
Sets the time extent of the GeoView. The Time Extent of the GeoView defines how time-enabled data is displayed. Time filtering is applied by participating layers. See theTimeAware
interface for details. Time filtering is not enabled until a non-null time extent is set on the GeoView. When the time extent is null on the GeoView, no time filtering is applied and all content is rendered.- Parameters:
timeExtent
- the time extent- Since:
- 100.3.0
-
getTimeExtent
public TimeExtent getTimeExtent()
Gets the current time extent.- Returns:
- the time extent, or null if no time extent is set
- Since:
- 100.3.0
- See Also:
setTimeExtent(TimeExtent)
-
getSelectionProperties
public SelectionProperties getSelectionProperties()
Returns the selection properties that are applied to a GeoView.- Returns:
- the selection properties
- Since:
- 100.4.0
-
dispose
public abstract void dispose()
Releases resources. Call this when you are finished with a view.- Since:
- 100.0.0
-
setBookmarkAsync
public ListenableFuture<java.lang.Boolean> setBookmarkAsync(Bookmark bookmark)
Asynchronously sets the bookmark, which consequently applies the viewpoint within the bookmark to the GeoView.- Parameters:
bookmark
- bookmark to set- Returns:
- a ListenableFuture. Add a listener to this to know when the operation is complete. The result of the future indicates whether the bookmark was set
- Throws:
java.lang.IllegalArgumentException
- if bookmark is null- Since:
- 100.3.0
-
getLabeling
public ViewLabelProperties getLabeling()
Gets the view label properties.The view label properties are an overall control for whether labels will be created and displayed for layers added to the view. Individual layers can also control whether labels should be displayed for their features. Labels need to be enabled both in the view and in the layer. By default the labeling for a view is enabled. The view label properties also control global aspects of the label appearance, for example animation effects.
- Returns:
- the view label properties
- Since:
- 100.10.0
-
setLabeling
public void setLabeling(ViewLabelProperties viewLabelProperties)
Sets the view label properties.The view label properties are an overall control for whether labels will be created and displayed for layers added to the view. Individual layers can also control whether labels should be displayed for their features. Labels need to be enabled both in the view and in the layer. By default the labeling for a view is enabled. The view label properties also control global aspects of the label appearance, for example animation effects.
- Parameters:
viewLabelProperties
- the view label properties- Throws:
java.lang.IllegalArgumentException
- if viewLabelProperties is null- Since:
- 100.10.0
-
addAttributionViewLayoutChangeListener
public void addAttributionViewLayoutChangeListener(android.view.View.OnLayoutChangeListener layoutChangeListener)
Registers a listener that will be called when the bounds of the attribution view change due to expanding or collapsing.Here is an example to demonstrate how a FloatingActionButton object moves up and down corresponding to the change of the attribution view :
FloatingActionButton fab = (FloatingActionButton) findViewById(R.id.fab); final CoordinatorLayout.LayoutParams layoutParams = (CoordinatorLayout.LayoutParams)fab.getLayoutParams(); mMapView.addAttributionViewLayoutChangeListener(new View.OnLayoutChangeListener() { @Override public void onLayoutChange( View v, int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) { int heightChanged = v.getHeight() - (oldBottom - oldTop); layoutParams.bottomMargin += heightChanged; } });
- Parameters:
layoutChangeListener
- the listener that will be called when layout bounds change- Throws:
java.lang.IllegalArgumentException
- if layoutChangeListener is null- Since:
- 100.1.0
-
removeAttributionViewLayoutChangeListener
public void removeAttributionViewLayoutChangeListener(android.view.View.OnLayoutChangeListener layoutChangeListener)
Unregisters a listener for the attribution view layout changes.- Parameters:
layoutChangeListener
- the listener for layout bounds change- Throws:
java.lang.IllegalArgumentException
- if layoutChangeListener is null- Since:
- 100.1.0
-
pause
public abstract void pause()
Pauses the drawing of the GeoView.This can be used to save resources when your application is minimized for example. Call this in the parent activity's onPause method. Ensure you have a corresponding call to
resume()
.- Since:
- 100.0.0
-
resume
public abstract void resume()
Resumes the drawing of the GeoView that has been paused, restarting the display of the contained ArcGISMap. You can call this in the parent activity's onResume method, after a corresponding call topause()
.- Since:
- 100.0.0
-
collapseAttributionBar
public void collapseAttributionBar()
Collapses the attribution bar if it is expanded.When the attribution bar is collapsed, it shows only one line of text. Any text that doesn't fit on a single line is truncated.
- Since:
- 100.8.0
-
-