ไอคอนที่วางอยู่ที่จุดใดจุดหนึ่งบนพื้นผิวแผนที่ ไอคอนตัวทำเครื่องหมายถูกวาดตามแนวของหน้าจออุปกรณ์แทนที่จะเป็นพื้นผิวของแผนที่ กล่าวคือ อาจไม่จำเป็นต้องเปลี่ยนการวางแนวเนื่องจากการหมุน การเอียง หรือการซูมแผนที่
เครื่องหมายมีคุณสมบัติดังต่อไปนี้
- อัลฟ่า
- ตั้งค่าความทึบของเครื่องหมาย ค่าเริ่มต้นคือ 1.0
- สมอ
- จุดบนรูปภาพที่วางไว้ตรงตำแหน่ง
LatLng
ของเครื่องหมาย ค่าเริ่มต้นจะเป็น 50% จากด้านซ้ายของรูปภาพและที่ด้านล่างของรูปภาพ - อันดับ
- ค่า
LatLng
สำหรับตำแหน่งเครื่องหมายบนแผนที่ คุณสามารถเปลี่ยนค่านี้ได้ทุกเมื่อหากต้องการย้ายเครื่องหมาย - ชื่อ
- สตริงข้อความที่แสดงในหน้าต่างข้อมูลเมื่อผู้ใช้แตะเครื่องหมาย คุณเปลี่ยนแปลงค่านี้ได้ทุกเมื่อ
- ตัวอย่างข้อมูล
- ข้อความเพิ่มเติมจะแสดงอยู่ใต้ชื่อ คุณสามารถเปลี่ยนแปลงค่านี้ได้ตลอดเวลา
- Icon
- บิตแมปที่แสดงสำหรับเครื่องหมาย หากไม่ได้ตั้งค่าไอคอนไว้ ไอคอนเริ่มต้นจะแสดงขึ้นมา คุณระบุสีอื่นๆ ของไอคอนเริ่มต้นได้โดยใช้
defaultMarker(float)
- สถานะการลาก
- หากต้องการอนุญาตให้ผู้ใช้ลากเครื่องหมาย ให้ตั้งค่าคุณสมบัตินี้เป็น
true
คุณเปลี่ยนค่านี้ได้ทุกเมื่อ ค่าเริ่มต้นคือfalse
- ระดับการแชร์
- โดยค่าเริ่มต้น เครื่องหมายจะปรากฏให้เห็น หากต้องการซ่อนเครื่องหมาย ให้ตั้งค่าคุณสมบัตินี้เป็น
false
คุณสามารถเปลี่ยนแปลงค่านี้ได้ตลอดเวลา - แฟลตหรือบิลบอร์ด
- หากเครื่องหมายอยู่บนแผนที่ เครื่องหมายจะติดอยู่กับแผนที่เนื่องจากกล้องจะหมุนและเอียง แต่จะยังคงมีขนาดเดียวกับการซูมของกล้อง ซึ่งต่างจาก
GroundOverlay
ถ้าเครื่องหมายเป็นป้ายโฆษณา จะวาดโดยหันเข้าหากล้องเสมอ และจะหมุนและเอียงโดยใช้กล้อง ค่าเริ่มต้นคือบิลบอร์ด (false
) - การหมุน
- การหมุนของเครื่องหมายตามเข็มนาฬิกาเกี่ยวกับจุดยึดของเครื่องหมาย โดยแกนของการหมุนจะตั้งฉากกับเครื่องหมาย การหมุน 0 จะตรงกับตำแหน่งเริ่มต้นของเครื่องหมาย เมื่อเครื่องหมายอยู่ในแนวราบบนแผนที่ ตำแหน่งเริ่มต้นจะเป็นแนวเหนือ และการหมุนจะทำให้เครื่องหมายยังคงเป็นแนวราบบนแผนที่เสมอ เมื่อเครื่องหมายเป็นป้ายโฆษณา ตำแหน่งเริ่มต้นจะชี้ขึ้นและการหมุนจะทำให้เครื่องหมายหันเข้าหากล้องเสมอ ค่าเริ่มต้นคือ 0
- zIndex
- ลำดับการวาดของเครื่องหมาย ระบบจะวาดเครื่องหมายตามลำดับของ zIndex โดยวาดเครื่องหมาย zIndex สูงสุดไว้ด้านบน การตั้งค่าพร็อพเพอร์ตี้ zIndex สำหรับแต่ละเครื่องหมายจะช่วยให้คุณควบคุมเป้าหมายการแตะที่ผู้ใช้มีแนวโน้มที่จะเข้าถึงมากที่สุดได้ ค่าเริ่มต้นคือ 0
- ติดแท็ก
Object
ที่เชื่อมโยงกับเครื่องหมาย ตัวอย่างเช่นObject
อาจมีข้อมูลเกี่ยวกับสิ่งที่เครื่องหมายแสดง วิธีนี้ง่ายกว่าการเก็บMap<Marker, Object>
แยกต่างหาก อีกตัวอย่างหนึ่งก็คือ คุณสามารถเชื่อมโยงรหัสString
ที่ตรงกับรหัสจากชุดข้อมูล Google Maps SDK สำหรับ Android จะไม่อ่านและเขียนพร็อพเพอร์ตี้นี้
ต้องเรียกใช้เมธอดในคลาสนี้บนเธรด UI ของ Android หากไม่เป็นเช่นนั้น จะมีการส่ง IllegalStateException
ขณะรันไทม์
ตัวอย่าง
GoogleMap map = ... // get a map.
// Add a marker at San Francisco.
Marker marker = map.addMarker(new MarkerOptions()
.position(new LatLng(37.7750, 122.4183))
.title("San Francisco")
.snippet("Population: 776733"));
คู่มือนักพัฒนา
ดูข้อมูลเพิ่มเติมได้ในคู่มือนักพัฒนาซอฟต์แวร์ Markers
สรุปข้อมูลชั้นเรียนที่ซ้อนกัน
@อินเทอร์เฟซ | Marker.CollisionBehavior | ระบุวิธีจัดการกับเครื่องหมายเมื่อเกิดการชนกับเครื่องหมายอื่นๆ หรือป้ายกำกับแผนที่ฐาน |
สรุปวิธีการสาธารณะ
boolean | |
float |
getAlpha()
เรียกอัลฟ่าของเครื่องหมาย
|
สตริง |
getId()
รับรหัสของเครื่องหมายนี้
|
LatLng |
getPosition()
แสดงตำแหน่งของเครื่องหมาย
|
float |
getRotation()
รับการหมุนของเครื่องหมาย
|
สตริง |
getSnippet()
รับตัวอย่างข้อมูลของเครื่องหมาย
|
ออบเจ็กต์ |
getTag()
รับแท็กสำหรับตัวทำเครื่องหมาย
|
สตริง |
getTitle()
รับชื่อของเครื่องหมาย
|
float |
getZIndex()
แสดง zIndex ของเครื่องหมาย
|
int |
hashCode()
|
void |
hideInfoWindow()
ซ่อนหน้าต่างข้อมูลหากแสดงจากเครื่องหมายนี้
|
boolean |
isDraggable()
รับความสามารถในการลากของเครื่องหมาย
|
boolean |
isFlat()
รับการตั้งค่าแบบแบนของมาร์กเกอร์
|
boolean |
isInfoWindowShown()
ส่งคืนว่าหน้าต่างข้อมูลแสดงอยู่เหนือเครื่องหมายนี้หรือไม่
|
boolean |
isVisible()
รับการตั้งค่าการแสดงผลของเครื่องหมายนี้
|
void |
remove()
ลบเครื่องหมายนี้ออกจากแผนที่
|
void |
setAlpha(อัลฟ่าแบบลอย)
ตั้งค่าอัลฟ่า (ความทึบแสง) ของเครื่องหมาย
|
void |
setAnchor(แท็ก AnchorU แบบลอย, แท็ก AnchorV แบบลอย)
กำหนดจุดยึดสำหรับเครื่องหมาย
|
void |
setDraggable(ลากได้แบบบูลีน)
ตั้งค่าความสามารถในการลากของเครื่องหมาย
|
void |
setFlat(บูลีนแบน)
ตั้งค่าว่าเครื่องหมายนี้ควรราบกับแผนที่
true หรือป้ายบิลบอร์ดที่หันเข้าหากล้อง false |
void | |
void |
setInfoWindowAnchor(AnchorU, Float AnchorV)
ระบุจุดในรูปภาพเครื่องหมายที่จะตรึงหน้าต่างข้อมูลเมื่อแสดง
|
void | |
void |
setRotation(การหมุนแบบลอย)
ตั้งค่าการหมุนของเครื่องหมายเป็นองศาตามเข็มนาฬิกาเกี่ยวกับจุดยึดของเครื่องหมาย
|
void |
setSnippet(ข้อมูลโค้ดสตริง)
ตั้งค่าข้อมูลของเครื่องหมาย
|
void |
setTag(แท็กออบเจ็กต์)
ตั้งค่าแท็กสำหรับตัวทำเครื่องหมาย
|
void |
setTitle(ชื่อสตริง)
ตั้งชื่อของเครื่องหมาย
|
void |
setVisible(แสดงบูลีน)
ตั้งค่าการแสดงเครื่องหมายนี้
|
void |
setZIndex(Float zIndex)
ตั้งค่า zIndex ของเครื่องหมาย
|
void |
showInfoWindow()
แสดงหน้าต่างข้อมูลของเครื่องหมายนี้บนแผนที่ หากเครื่องหมายนี้
isVisible() |
ข้อมูลสรุปของเมธอดที่รับช่วงมา
วิธีการสาธารณะ
บูลีนสาธารณะ เท่ากับ (ออบเจ็กต์อื่นๆ)
ทศนิยมสาธารณะ getAlpha ()
เรียกอัลฟ่าของเครื่องหมาย
คิกรีเทิร์น
- อัลฟ่าของเครื่องหมายในช่วง [0, 1]
สาธารณะ สตริง getId ()
รับรหัสของเครื่องหมายนี้ ID จะไม่ซ้ำกันในเครื่องหมายทั้งหมดบนแผนที่
คิกรีเทิร์น
- ID ของเครื่องหมายนี้
สาธารณะ LatLng getPosition ()
แสดงตำแหน่งของเครื่องหมาย
คิกรีเทิร์น
- ออบเจ็กต์
LatLng
ที่ระบุตำแหน่งปัจจุบันของเครื่องหมาย
ทศนิยมสาธารณะ getRotation ()
รับการหมุนของเครื่องหมาย
คิกรีเทิร์น
- การหมุนเครื่องหมายเป็นองศาตามเข็มนาฬิกาจากตำแหน่งเริ่มต้น
สาธารณะ สตริง getSnippet ()
รับตัวอย่างข้อมูลของเครื่องหมาย
คิกรีเทิร์น
- สตริงที่มีข้อมูลโค้ดของเครื่องหมาย
ออบเจ็กต์สาธารณะ getTag ()
รับแท็กสำหรับตัวทำเครื่องหมาย
คิกรีเทิร์น
- แท็กหากมีการตั้งค่าด้วย
setTag
หรือnull
หากไม่มีการตั้งค่าแท็ก
สาธารณะ สตริง getTitle ()
รับชื่อของเครื่องหมาย
คิกรีเทิร์น
- สตริงที่มีชื่อของเครื่องหมาย
ทศนิยมสาธารณะ getZIndex ()
แสดง zIndex ของเครื่องหมาย
คิกรีเทิร์น
- zIndex ของเครื่องหมายนี้
สาธารณะ int hashCode ()
โมฆะสาธารณะ hideInfoWindow ()
ซ่อนหน้าต่างข้อมูลหากแสดงจากเครื่องหมายนี้
วิธีนี้จะไม่มีผลหากมองไม่เห็นเครื่องหมายนี้
บูลีนสาธารณะ isDraggable ()
รับความสามารถในการลากของเครื่องหมาย เมื่อลากเครื่องหมายได้ ผู้ใช้จะย้ายเครื่องหมายได้โดยกดที่เครื่องหมายค้างไว้
คิกรีเทิร์น
true
หากลากเครื่องหมายได้ หรือให้แสดงfalse
บูลีนสาธารณะ isFlat ()
รับการตั้งค่าแบบแบนของมาร์กเกอร์
คิกรีเทิร์น
true
หากเครื่องหมายอยู่บนแผนที่false
หากเครื่องหมายควรหันเข้าหากล้อง
บูลีนสาธารณะ isInfoWindowShown ()
ส่งคืนว่าหน้าต่างข้อมูลแสดงอยู่เหนือเครื่องหมายนี้หรือไม่ โดยไม่คำนึงว่าหน้าต่างข้อมูลจะปรากฏบนหน้าจอจริงๆ หรือไม่
บูลีนสาธารณะ isVisible ()
รับการตั้งค่าการแสดงผลของเครื่องหมายนี้ โปรดทราบว่านี่ไม่ได้ระบุว่าตัวทำเครื่องหมายอยู่ภายในวิวพอร์ตของหน้าจอหรือไม่ ซึ่งบ่งชี้ว่าจะมีการวาดตัวทำเครื่องหมายหรือไม่หากอยู่ในวิวพอร์ตของหน้าจอ
คิกรีเทิร์น
- การเปิดเผยเครื่องหมายนี้
โมฆะสาธารณะ นำออก ()
ลบเครื่องหมายนี้ออกจากแผนที่ หลังจากนำเครื่องหมายออกแล้ว จะไม่มีการกำหนดลักษณะการทำงานของเมธอดทั้งหมด
สาธารณะ โมฆะ setAlpha (อัลฟ่าแบบลอย)
ตั้งค่าอัลฟ่า (ความทึบแสง) ของเครื่องหมาย ค่านี้มีค่าตั้งแต่ 0 ถึง 1 โดย 0 หมายความว่าเครื่องหมาย มีความโปร่งใสทั้งหมด และ 1 หมายความว่าเครื่องหมายทึบแสงสนิท
พารามิเตอร์
อัลฟ่า |
---|
Public void setAnchor (Float AnchorU, Float AnchorV)
กำหนดจุดยึดสำหรับเครื่องหมาย
จุดยึดจะระบุจุดในภาพไอคอนที่ยึดอยู่กับตำแหน่งของเครื่องหมายบนพื้นผิวของโลก
ระบบจะระบุจุดยึดในพื้นที่ต่อเนื่อง [0.0, 1.0] x [0.0, 1.0] โดยที่ (0, 0) คือมุมซ้ายบนของรูปภาพ และ (1, 1) คือมุมขวาล่าง จุดยึดในรูปภาพ กว้าง x สูง คือจุดตารางกริดแต่ละจุดที่ใกล้เคียงที่สุดในตาราง (W + 1) x (H + 1) ที่ได้มาจากการปรับขนาดของการปัดเศษแล้ว เช่น ในรูปภาพขนาด 4 x 2 จุดยึด (0.7, 0.6) จะกลายเป็นจุดตารางที่ (3, 1)
*-----+-----+-----+-----* | | | | | | | | | | +-----+-----+-----+-----+ | | | X | | (U, V) = (0.7, 0.6) | | | | | *-----+-----+-----+-----* *-----+-----+-----+-----* | | | | | | | | | | +-----+-----+-----X-----+ (X, Y) = (3, 1) | | | | | | | | | | *-----+-----+-----+-----*
พารามิเตอร์
anchorU | พิกัด u ของจุดยึด เป็นอัตราส่วนของความกว้างของภาพ (ในช่วง [0, 1]) |
---|---|
anchorV | พิกัด v ของจุดยึด เป็นอัตราส่วนของความสูงของภาพ (ในช่วง [0, 1]) |
โมฆะสาธารณะ setDraggable (boolean draggable)
ตั้งค่าความสามารถในการลากของเครื่องหมาย เมื่อลากเครื่องหมายได้ ผู้ใช้จะย้ายเครื่องหมายได้โดยกดที่เครื่องหมายค้างไว้
พารามิเตอร์
ลากได้ |
---|
โมฆะสาธารณะ setFlat (บูลีนแบบแบน)
ตั้งค่าว่าเครื่องหมายนี้ควรราบกับแผนที่ true
หรือป้ายบิลบอร์ดที่หันเข้าหากล้อง false
พารามิเตอร์
แบน |
---|
โมฆะ สาธารณะ setIcon (BitmapDescriptor iconDescriptor)
กำหนดไอคอนสำหรับเครื่องหมาย
พารามิเตอร์
iconDescriptor | หาก Null ระบบจะใช้ตัวทำเครื่องหมายเริ่มต้น |
---|
Public void setInfoWindowAnchor (Floor AnchorU, Float AnchorV)
ระบุจุดในรูปภาพเครื่องหมายที่จะตรึงหน้าต่างข้อมูลเมื่อแสดง ข้อมูลนี้ระบุอยู่ในระบบพิกัดเดียวกันกับสมอ ดูรายละเอียดเพิ่มเติมได้ที่ setAnchor(float, float)
ค่าเริ่มต้นคือตรงกลางด้านบนของรูปภาพ
พารามิเตอร์
anchorU | พิกัด u ของจุดยึดหน้าต่างข้อมูล เป็นอัตราส่วนของความกว้างของรูปภาพ (ในช่วง [0, 1]) |
---|---|
anchorV | พิกัด v ของจุดยึดหน้าต่างข้อมูล เป็นอัตราส่วนของความสูงของรูปภาพ (ในช่วง [0, 1]) |
โมฆะสาธารณะ setRotation (การหมุนแบบลอย)
ตั้งค่าการหมุนของเครื่องหมายเป็นองศาตามเข็มนาฬิกาเกี่ยวกับจุดยึดของเครื่องหมาย โดยแกนของการหมุนจะตั้งฉากกับเครื่องหมาย การหมุน 0 จะตรงกับตำแหน่งเริ่มต้นของเครื่องหมาย
พารามิเตอร์
การหมุน |
---|
โมฆะสาธารณะ setSnippet (ข้อมูลโค้ดสตริง)
ตั้งค่าข้อมูลของเครื่องหมาย
พารามิเตอร์
ตัวอย่างข้อมูล | หาก Null ข้อมูลโค้ดจะถูกล้าง |
---|
โมฆะสาธารณะ setTag (แท็กออบเจ็กต์)
ตั้งค่าแท็กสำหรับตัวทำเครื่องหมาย
คุณสามารถใช้พร็อพเพอร์ตี้นี้เพื่อเชื่อมโยง Object
ที่กําหนดเองกับเครื่องหมายนี้ ตัวอย่างเช่น Object
อาจมีข้อมูลเกี่ยวกับสิ่งที่เครื่องหมายแสดง วิธีนี้ง่ายกว่าการเก็บ Map<Marker, Object>
แยกต่างหาก อีกตัวอย่างหนึ่งก็คือ คุณสามารถเชื่อมโยงรหัส String
ที่ตรงกับรหัสจากชุดข้อมูลได้ Google Maps SDK สำหรับ Android จะไม่อ่านและเขียนพร็อพเพอร์ตี้นี้ คุณมีหน้าที่รับผิดชอบในการเรียกใช้ setTag(null)
เพื่อล้างแท็กเมื่อไม่ต้องการใช้งานแล้ว เพื่อป้องกันไม่ให้หน่วยความจำรั่วไหลในแอป
พารามิเตอร์
แท็ก | หาก Null แท็กจะถูกล้าง |
---|
โมฆะสาธารณะ setTitle (ชื่อสตริง)
ตั้งชื่อของเครื่องหมาย
พารามิเตอร์
title | หาก Null ระบบจะล้างชื่อ |
---|
โมฆะสาธารณะ setVisible (boolean visible)
ตั้งค่าการแสดงเครื่องหมายนี้ หากตั้งค่าเป็น false
และขณะนี้หน้าต่างข้อมูลแสดงขึ้นสำหรับเครื่องหมายนี้
จะเป็นการซ่อนหน้าต่างข้อมูล
พารามิเตอร์
มองเห็นได้ |
---|
สาธารณะ โมฆะ setZIndex (Float zIndex)
ตั้งค่า zIndex ของเครื่องหมาย
พารามิเตอร์
zIndex |
---|
โมฆะสาธารณะ showInfoWindow ()
แสดงหน้าต่างข้อมูลของเครื่องหมายนี้บนแผนที่ หากเครื่องหมายนี้ isVisible()
การขว้าง
IllegalArgumentException | หาก marker ไม่อยู่ในแผนที่นี้
|
---|