میتوانید ظاهر نشانگرها را بااستفاده از سازنده pinConfiguration سفارشیسازی کنید. سازنده pinConfiguration روشهایی برای تغییر
رنگهای پسزمینه و حاشیه، نوشتار و رنگ گلیف،
ارتفاع
، تصویر مورد استفاده، و گزینههای بیشتر
برای سفارشیسازی بیشتر ارائه میدهد.
نمونه کد زیر نشان میدهد که چگونه میتوان یک نشانگر جدید ایجاد کرد و بااستفاده از برخی گزینههای سفارشیسازی موجود، به آن سبک داد:
map.addMarker(
markerOptions {
position = sanFrancisco
style = pinConfiguration {
backgroundColor = Color.GREEN
borderColor = Color.GREEN
glyph = Glyph.fromColor(Color.RED)
}
}
)
این صفحه به شما نشان میدهد که چگونه نشانگرها را به روشهای زیر سفارشیسازی کنید:
- مقیاسبندی نشانگر
- تغییر رنگ پسزمینه
- تغییر رنگ حاشیه
- افزودن نوشتار به گلیف
- استفاده از تصویر بهعنوان نشانگر
- برداشتن نشانگرها
مقیاسبندی نشانگر
برای مقیاسبندی نشانگر، از گزینه scale استفاده کنید:
map.addMarker(
markerOptions {
position = sanFrancisco
style = pinConfiguration {
scale = 3.14
}
}
)
تغییر رنگ پسزمینه
از گزینه PinElement.background برای تغییر رنگ پسزمینه نشانگر درطول ساخت استفاده کنید:
map.addMarker(
markerOptions {
position = sanFrancisco
style = pinConfiguration {
backgroundColor = Color.GREEN
}
}
)
تغییر رنگ حاشیه
از گزینه markerOptions.borderColor برای تغییر رنگ حاشیه نشانگر درطول ساخت استفاده کنید:
map.addMarker(
markerOptions {
position = sanFrancisco
style = pinConfiguration {
borderColor = Color.GREEN
}
}
)
افزودن نوشتار به گلیف
از روش markerOptions.glyph برای جایگزین کردن گلیف پیشفرض با نویسه نوشتاری استفاده کنید. نشانگر نوشتار نشانگر با نشانگر مقیاسبندی میشود:
map.addMarker(
markerOptions {
position = sanFrancisco
style = pinConfiguration {
glyph = Glyph.fromText("G")
}
}
)
استفاده از تصویر بهعنوان نشانگر
Map.addMarker(markerOptions {
position = latLngAltitude {
latitude = 40.7484
longitude = -73.9857
altitude = 100.0
}
zIndex = 1
label = "Empire State Building"
isExtruded = true
isDrawnWhenOccluded = true
altitudeMode = AltitudeMode.RELATIVE_TO_MESH
setStyle(ImageView(R.drawable.ook))
})
برداشتن نشانگرها
از Marker.remove() برای برداشتن نشانگرها از نقشه استفاده کنید:
marker.remove();