ViewAnnotationManager

Manager API to control View Annotations.

View annotations are Android Views on top of the MapView and bound to some Geometry or AnnotatedLayerFeature.

In case some view annotations intersect on the screen Z-index is based on addition order.

View annotations are invariant to map camera transformations however such properties as size, visibility etc could be controlled by the user using update operation.

View annotation manager instance is destroyed automatically when MapView.onDestroy is called.

Types

Link copied to clipboard
object Companion

Static methods and variables.

Functions

Link copied to clipboard
abstract fun addViewAnnotation(view: View, options: ViewAnnotationOptions)

Add annotation View which is already inflated. View dimensions will be taken as width / height from view's layout params unless they are not specified explicitly with ViewAnnotationOptions.Builder.width and ViewAnnotationOptions.Builder.height.

abstract fun addViewAnnotation(@LayoutRes resId: Int, options: ViewAnnotationOptions): View

Add view annotation inflated from resId synchronously.

abstract fun addViewAnnotation(@LayoutRes resId: Int, options: ViewAnnotationOptions, asyncInflater: AsyncLayoutInflater, asyncInflateCallback: (View) -> Unit)

Add view annotation inflated from resId asynchronously.

Link copied to clipboard
abstract fun cameraForAnnotations(annotations: List<View>, edgeInsets: EdgeInsets? = null, bearing: Double? = null, pitch: Double? = null): CameraOptions?

Return camera options bound to given view annotation list, padding, bearing and pitch values. Annotations with ViewAnnotationOptions.visible set to false will be excluded from the calculations of CameraOptions. Annotations with only View.VISIBLE will be included in the calculations for CameraOptions

Link copied to clipboard
abstract fun getViewAnnotation(annotatedLayerFeature: AnnotatedLayerFeature): View?

Find View by annotated layer feature if it was specified as part of ViewAnnotationOptions.getAnnotatedFeature.

Link copied to clipboard

Get current ViewAnnotationOptions for given view.

Find ViewAnnotationOptions by annotated layer feature if it was specified as part of ViewAnnotationOptions.getAnnotatedFeature.

Link copied to clipboard

Get view annotation update mode.

Link copied to clipboard

Remove all view annotations.

Link copied to clipboard
abstract fun removeViewAnnotation(view: View): Boolean

Remove given annotation view from the map if it was present.

Link copied to clipboard

Set view annotation update mode defined in ViewAnnotationUpdateMode.

Link copied to clipboard

Update given view annotation view with ViewAnnotationOptions. Important thing to keep in mind that only properties present in options will be updated, all other will remain the same as specified before.

Properties

Link copied to clipboard

Return Map of added View with their ViewAnnotationOptions. This method should be called every time to get all added Views and associated ViewAnnotationOptions.