PlaceMarker.Builder
public
static
final
class
PlaceMarker.Builder
extends Object
java.lang.Object | |
↳ | androidx.car.app.model.PlaceMarker.Builder |
A builder of PlaceMarker
.
Summary
Public constructors | |
---|---|
Builder()
Returns an empty |
Public methods | |
---|---|
PlaceMarker
|
build()
Constructs the |
PlaceMarker.Builder
|
setColor(CarColor color)
Sets the color that should be used for the marker on the map. |
PlaceMarker.Builder
|
setIcon(CarIcon icon, int iconType)
Sets the icon to display in the marker. |
PlaceMarker.Builder
|
setLabel(CharSequence label)
Sets the text that should be displayed as the marker's content. |
Inherited methods | |
---|---|
Public constructors
Public methods
build
public PlaceMarker build ()
Constructs the PlaceMarker
defined by this builder.
Returns | |
---|---|
PlaceMarker |
Throws | |
---|---|
IllegalStateException |
if the icon is of the type PlaceMarker.TYPE_IMAGE and a a
color is set
|
setColor
public PlaceMarker.Builder setColor (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 PlaceMarker.TYPE_IMAGE
.
Parameters | |
---|---|
color |
CarColor |
Returns | |
---|---|
PlaceMarker.Builder |
Throws | |
---|---|
NullPointerException |
if the color is null
|
setIcon
public PlaceMarker.Builder setIcon (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(CharSequence)
, the icon will take precedence over it.
Icon Sizing Guidance
- For
PlaceMarker.TYPE_IMAGE
, the provided image should be 36 x 36 dp. The host applies 4 dp rounded corners before the icon is rendered on either the map or the list. - For
PlaceMarker.TYPE_ICON
, the provided icon should be 32 x 32 dp and have its tint value set viaCarIcon.Builder.setTint(CarColor)
. Otherwise, a default tint color as determined by the host will be applied.
If the size of the provided icon exceeds the size requirements described above in either one of the dimensions, it will be scaled down and centered inside the bounding box while preserving the aspect ratio.
See CarIcon
for more details related to providing icon and image resources
that work with different car screen pixel densities.
Parameters | |
---|---|
icon |
CarIcon : the CarIcon to display inside the marker |
iconType |
int : one of PlaceMarker.TYPE_ICON or PlaceMarker.TYPE_IMAGE |
Returns | |
---|---|
PlaceMarker.Builder |
Throws | |
---|---|
NullPointerException |
if the icon is null
|
setLabel
public PlaceMarker.Builder setLabel (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(CarIcon, int)
, the icon will take precedence.
Spans are not supported in the input string.
Parameters | |
---|---|
label |
CharSequence : 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) |
Returns | |
---|---|
PlaceMarker.Builder |
Throws | |
---|---|
NullPointerException |
if the label is null |
See also: