PlaceMarker.Builder


public final class PlaceMarker.Builder


A builder of PlaceMarker.

Summary

Public constructors

Returns an empty Builder instance.

Public methods

@NonNull PlaceMarker

Constructs the PlaceMarker defined by this builder.

@NonNull PlaceMarker.Builder

Sets the color that should be used for the marker on the map.

@NonNull PlaceMarker.Builder
setIcon(@NonNull CarIcon icon, int iconType)

Sets the icon to display in the marker.

@NonNull PlaceMarker.Builder

Sets the text that should be displayed as the marker's content.

Public constructors

Builder

Added in 1.0.0
public Builder()

Returns an empty Builder instance.

Public methods

build

Added in 1.0.0
public @NonNull PlaceMarker build()

Constructs the PlaceMarker defined by this builder.

Throws
java.lang.IllegalStateException

if the icon is of the type TYPE_IMAGE and a a color is set

setColor

Added in 1.0.0
public @NonNull PlaceMarker.Builder setColor(@NonNull CarColor color)

Sets the color that should be used for the marker on the map.

This color is applied in the following cases:

  • When the PlaceMarker is displayed on the map, the pin enclosing the icon or label will be painted using the given color.
  • When the PlaceMarker is displayed on the list, the color will be applied if the content is a label. A label rendered inside a map's pin cannot be colored and will always use the default color as chosen by the host.

Unless set with this method, the host will use a default color for the marker.

The host may ignore this color and use the default instead if the color does not pass the contrast requirements.

A color cannot be set if the marker's icon type is of TYPE_IMAGE.

Throws
java.lang.NullPointerException

if the color is null

setIcon

Added in 1.0.0
public @NonNull PlaceMarker.Builder setIcon(@NonNull CarIcon icon, int iconType)

Sets the icon to display in the marker.

Unless set with this method, the marker will not have an icon.

If a label is specified with setLabel, the icon will take precedence over it.

Icon Sizing Guidance If the input icon's size exceeds the sizing requirements for the given icon type in either one of the dimensions, it will be scaled down to be centered inside the bounding box while preserving its aspect ratio.

See CarIcon for more details related to providing icon and image resources that work with different car screen pixel densities.

Parameters
@NonNull CarIcon icon

the CarIcon to display inside the marker

int iconType

one of TYPE_ICON or TYPE_IMAGE

Throws
java.lang.NullPointerException

if the icon is null

setLabel

Added in 1.0.0
public @NonNull PlaceMarker.Builder setLabel(@NonNull CharSequence label)

Sets the text that should be displayed as the marker's content.

Unless set with this method, the marker will not have a label.

If an icon is specified with setIcon, the icon will take precedence.

Spans are not supported in the input string and will be ignored.

Parameters
@NonNull CharSequence label

the text to display inside of the marker. The string must have a maximum size of 3 characters. Set to null to let the host choose a labelling scheme (for example, using a sequence of numbers)

Throws
java.lang.NullPointerException

if the label is null

See also
CarText