Bút dạ

lớp cuối cùng công khai Điểm đánh dấu mở rộng Đối tượng

Biểu tượng được đặt tại một điểm cụ thể trên bề mặt bản đồ. Biểu tượng điểm đánh dấu được vẽ theo hướng dựa vào màn hình của thiết bị chứ không phải bề mặt của bản đồ; tức là không nhất thiết phải thay đổi hướng do thao tác xoay, nghiêng hoặc thu phóng bản đồ.

Điểm đánh dấu có các thuộc tính sau:

Alpha
Đặt độ mờ của điểm đánh dấu. Giá trị mặc định là 1.0.
Neo
Điểm trên hình ảnh sẽ được đặt tại vị trí LatLng của điểm đánh dấu. Tỷ lệ mặc định là 50% tính từ bên trái và cuối hình ảnh.
Vị trí
Giá trị LatLng cho vị trí của điểm đánh dấu trên bản đồ. Bạn có thể thay đổi giá trị này tại bất kỳ lúc nào nếu bạn muốn di chuyển điểm đánh dấu.
Tiêu đề
Một chuỗi văn bản hiển thị trong cửa sổ thông tin khi người dùng nhấn vào điểm đánh dấu. Bạn có thể thay đổi giá trị này bất kỳ lúc nào.
Đoạn trích
Văn bản bổ sung hiển thị bên dưới tiêu đề. Bạn có thể thay đổi giá trị này bất kỳ lúc nào.
Biểu tượng
Một bitmap được hiển thị cho điểm đánh dấu. Nếu bạn không đặt biểu tượng này thì biểu tượng mặc định sẽ là được hiển thị. Bạn có thể chỉ định màu thay thế cho biểu tượng mặc định bằng defaultMarker(float).
Trạng thái kéo
Nếu bạn muốn cho phép người dùng kéo điểm đánh dấu, hãy đặt thuộc tính này thành true. Bạn có thể thay đổi giá trị này bất cứ lúc nào. Giá trị mặc định là false.
Chế độ hiển thị
Theo mặc định, điểm đánh dấu sẽ hiển thị. Để ẩn điểm đánh dấu, hãy đặt thuộc tính này thành false. Bạn có thể thay đổi giá trị này bất kỳ lúc nào.
Phẳng hoặc biển quảng cáo
Nếu điểm đánh dấu nằm trên bản đồ, thì điểm đánh dấu sẽ vẫn được đặt cố định trên bản đồ dưới dạng máy ảnh xoay và nghiêng nhưng vẫn sẽ giữ nguyên kích thước khi thu phóng máy ảnh, không giống như GroundOverlay. Nếu điểm đánh dấu là một biển quảng cáo, nó sẽ luôn được vẽ về phía máy ảnh và sẽ xoay và nghiêng cùng với máy ảnh. Mặc định là biển quảng cáo (false)
Góc xoay
Xoay điểm đánh dấu theo độ theo chiều kim đồng hồ quanh điểm neo của điểm đánh dấu. Trục xoay vuông góc với điểm đánh dấu. Mức xoay 0 tương ứng với giá trị mặc định vị trí của điểm đánh dấu. Khi điểm đánh dấu bằng phẳng trên bản đồ, vị trí mặc định là Bắc căn chỉnh và xoay sao cho điểm đánh dấu luôn giữ nguyên bằng phẳng trên bản đồ. Khi điểm đánh dấu là một biển quảng cáo, vị trí mặc định là hướng lên trên và hướng xoay sao cho điểm đánh dấu luôn hướng về phía máy ảnh. Giá trị mặc định là "0".
zIndex
Thứ tự vẽ cho điểm đánh dấu. Các điểm đánh dấu được vẽ theo thứ tự zIndex, với điểm đánh dấu zIndex cao nhất được vẽ ở trên cùng. Bằng cách đặt thuộc tính zIndex cho mỗi điểm đánh dấu, bạn có thể kiểm soát mục tiêu nhấn nào mà người dùng của bạn có nhiều khả năng sẽ nhấn nhất. Giá trị mặc định là "0".
Thẻ
Object được liên kết với điểm đánh dấu. Ví dụ: Object có thể chứa dữ liệu về nội dung đại diện của điểm đánh dấu. Cách này dễ hơn so với việc lưu trữ một Map<Marker, Object> riêng biệt. Một ví dụ khác: bạn có thể liên kết mã String tương ứng với ID từ tập dữ liệu. SDK Google Maps dành cho Android không đọc hoặc viết thuộc tính này.

Các phương thức trong lớp này phải được gọi trên luồng giao diện người dùng Android. Nếu không, IllegalStateException sẽ được gửi trong thời gian chạy.

Ví dụ:

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"));
 

Hướng dẫn cho nhà phát triển

Để biết thêm thông tin, hãy đọc bài viết về nhà phát triển Điểm đánh dấu của chúng tôi.

Tóm tắt về lớp lồng ghép

@interface Marker.CollisionBehavior Cho biết cách điểm đánh dấu được xử lý khi có va chạm với các điểm đánh dấu hoặc với cơ sở khác nhãn bản đồ.

Tóm tắt về phương thức công khai

boolean
bằng(Đối tượng khác)
Kiểm thử xem Marker này có bằng một mã khác hay không.
số thực dấu phẩy động
getAlpha()
Lấy giá trị alpha của điểm đánh dấu.
Chuỗi
getId()
Lấy mã nhận dạng của điểm đánh dấu này.
LatLng
getPosition()
Trả về vị trí của điểm đánh dấu.
số thực dấu phẩy động
getRotation()
Nhận xoay điểm đánh dấu.
Chuỗi
getSnippet()
Lấy đoạn mã của điểm đánh dấu.
Đối tượng
getTag()
Lấy thẻ cho điểm đánh dấu.
Chuỗi
getTitle()
Xem tiêu đề của điểm đánh dấu.
số thực dấu phẩy động
getZIndex()
Trả về zIndex của điểm đánh dấu.
int
void
hideInfoWindow()
Ẩn cửa sổ thông tin nếu cửa sổ thông tin được hiển thị từ điểm đánh dấu này.
boolean
isDraggable()
Xem khả năng kéo của điểm đánh dấu.
boolean
isFlat()
Lấy chế độ cài đặt phẳng của Điểm đánh dấu.
boolean
isInfoWindowShown()
Trả về xem cửa sổ thông tin hiện có hiển thị phía trên điểm đánh dấu này hay không.
boolean
isVisible()
Xem cài đặt mức độ hiển thị của điểm đánh dấu này.
void
remove()
Xóa điểm đánh dấu này khỏi bản đồ.
void
setAlpha(giai đoạn alpha có độ chính xác đơn)
Đặt alpha (độ mờ) của điểm đánh dấu.
void
setAnchor(float neoU; float neoV)
Đặt điểm neo cho điểm đánh dấu.
void
setDraggable(boolean draggable)
Đặt khả năng kéo của điểm đánh dấu.
void
setFlat(boolean Flat)
Đặt điểm đánh dấu này phải nằm trên bản đồ true hoặc biển quảng cáo đối diện với máy ảnh false.
void
setIcon(BitmapDescriptor iconDescriptor)
Đặt biểu tượng cho điểm đánh dấu.
void
setInfoWindowAnchor(float neoU, float neoV)
Chỉ định điểm trong hình ảnh điểm đánh dấu mà tại đó cửa sổ thông tin sẽ được cố định được hiển thị.
void
setPosition(LatLng latlng)
Đặt vị trí của điểm đánh dấu.
void
setRotation(xoay số thực)
Đặt xoay điểm đánh dấu theo độ theo chiều kim đồng hồ quanh điểm neo của điểm đánh dấu.
void
setSnippet(Đoạn mã chuỗi)
Đặt đoạn mã của điểm đánh dấu.
void
setTag(Thẻ đối tượng)
Đặt thẻ cho điểm đánh dấu.
void
setTitle(Tiêu đề chuỗi)
Đặt tiêu đề của điểm đánh dấu.
void
setVisible(boolean visible)
Đặt mức độ hiển thị của điểm đánh dấu này.
void
setZIndex(nổi zIndex)
Đặt zIndex của điểm đánh dấu.
void
showInfoWindow()
Hiển thị cửa sổ thông tin của điểm đánh dấu này trên bản đồ, nếu điểm đánh dấu này isVisible().

Tóm tắt về phương thức kế thừa

Phương thức công khai

công khai boolean bằng (Đối tượng khác)

Kiểm thử xem Marker này có bằng một mã khác hay không.

Tham số
Chi phí khác Object.
Giá trị trả về
  • true nếu cả hai đối tượng đều là cùng một đối tượng, tức là đối tượng này == khác.

công khai độ chính xác đơn getAlpha ()

Lấy giá trị alpha của điểm đánh dấu.

Giá trị trả về
  • giá trị alpha của điểm đánh dấu trong khoảng [0, 1].

công khai Chuỗi văn bản getId ()

Lấy mã nhận dạng của điểm đánh dấu này. Mã này sẽ là duy nhất trong số tất cả Điểm đánh dấu trên bản đồ.

Giá trị trả về
  • mã của điểm đánh dấu này.

công khai LatLng getPosition ()

Trả về vị trí của điểm đánh dấu.

Giá trị trả về
  • Đối tượng LatLng chỉ định vị trí hiện tại của điểm đánh dấu.

công khai độ chính xác đơn getRotation ()

Nhận xoay điểm đánh dấu.

Giá trị trả về
  • xoay điểm đánh dấu theo độ theo chiều kim đồng hồ so với vị trí mặc định.

công khai Chuỗi văn bản getSnippet ()

Lấy đoạn mã của điểm đánh dấu.

Giá trị trả về
  • Một chuỗi chứa đoạn mã của điểm đánh dấu.

công khai Đối tượng getTag ()

Lấy thẻ cho điểm đánh dấu.

Giá trị trả về
  • thẻ nếu thẻ được đặt bằng setTag; null nếu bạn chưa đặt thẻ nào.

công khai Chuỗi văn bản getTitle ()

Xem tiêu đề của điểm đánh dấu.

Giá trị trả về
  • Một chuỗi ký tự chứa tiêu đề của điểm đánh dấu.

công khai độ chính xác đơn getZIndex ()

Trả về zIndex của điểm đánh dấu.

Giá trị trả về
  • zIndex của điểm đánh dấu này.

công khai đánh chặn hashCode ()

công khai trống hideInfoWindow ()

Ẩn cửa sổ thông tin nếu cửa sổ thông tin được hiển thị từ điểm đánh dấu này.

Phương pháp này không có hiệu lực nếu điểm đánh dấu này không hiển thị.

công khai boolean isDraggable ()

Xem khả năng kéo của điểm đánh dấu. Khi một điểm đánh dấu có thể kéo, người dùng có thể di chuyển nó bằng cách nhấn và giữ điểm đánh dấu.

Giá trị trả về
  • true nếu điểm đánh dấu có thể kéo được; nếu không, sẽ trả về false.

công khai boolean isFlat ()

Lấy chế độ cài đặt phẳng của Điểm đánh dấu.

Giá trị trả về
  • true nếu điểm đánh dấu nằm trên bản đồ; false nếu điểm đánh dấu hướng về phía máy ảnh.

công khai boolean isInfoWindowShown ()

Trả về xem cửa sổ thông tin hiện có hiển thị phía trên điểm đánh dấu này hay không. Điều này không tính đến liệu cửa sổ thông tin có thực sự hiển thị trên màn hình hay không.

công khai boolean isVisible ()

Xem cài đặt mức độ hiển thị của điểm đánh dấu này. Lưu ý rằng điều này không cho biết liệu điểm đánh dấu nằm trong khung nhìn của màn hình. Nó cho biết điểm đánh dấu sẽ được vẽ nếu có trong khung nhìn của màn hình.

Giá trị trả về
  • khả năng hiển thị của điểm đánh dấu này.

công khai trống xoá ()

Xóa điểm đánh dấu này khỏi bản đồ. Sau khi đã xoá điểm đánh dấu, hành vi của tất cả chưa được xác định.

công khai trống setAlpha (số thực alpha có độ chính xác đơn)

Đặt alpha (độ mờ) của điểm đánh dấu. Đây là một giá trị từ 0 đến 1, trong đó 0 có nghĩa là điểm đánh dấu hoàn toàn trong suốt và 1 có nghĩa là điểm đánh dấu hoàn toàn mờ đục.

Tham số
alpha

công khai trống setAnchor (float neoU; float neoV)

Đặt điểm neo cho điểm đánh dấu.

Điểm neo chỉ định điểm trong hình ảnh biểu tượng được neo vào vị trí của điểm đánh dấu trên bề mặt Trái Đất.

Điểm neo được xác định trong không gian liên tục [0,0, 1,0] x [0,0, 1,0], trong đó (0, 0) là góc trên cùng bên trái của hình ảnh, và (1, 1) là góc dưới cùng bên phải. Điểm neo trong hình ảnh W x H là điểm lưới riêng biệt gần nhất trong khoảng (W + 1) x Lưới (H + 1), có được bằng cách chia tỷ lệ sau đó làm tròn. Ví dụ: trong hình ảnh 4 x 2, điểm neo (0,7, 0,6) phân giải thành điểm lưới tại (3, 1).

 *-----+-----+-----+-----*
 |     |     |     |     |
 |     |     |     |     |
 +-----+-----+-----+-----+
 |     |     |   X |     |   (U, V) = (0.7, 0.6)
 |     |     |     |     |
 *-----+-----+-----+-----*
 *-----+-----+-----+-----*
 |     |     |     |     |
 |     |     |     |     |
 +-----+-----+-----X-----+   (X, Y) = (3, 1)
 |     |     |     |     |
 |     |     |     |     |
 *-----+-----+-----+-----*
 

Tham số
anchorU Toạ độ u của neo, là tỷ lệ chiều rộng hình ảnh (trong phạm vi [0, 1]).
anchorV toạ độ v của điểm neo, là tỷ lệ chiều cao hình ảnh (trong phạm vi [0, 1]).

công khai trống setDraggable (boolean có thể kéo)

Đặt khả năng kéo của điểm đánh dấu. Khi một điểm đánh dấu có thể kéo, người dùng có thể di chuyển nó bằng cách nhấn và giữ điểm đánh dấu.

Tham số
kéo được

công khai trống setFlat (boolean phẳng)

Đặt điểm đánh dấu này phải nằm trên bản đồ true hoặc biển quảng cáo đối diện với máy ảnh false.

Tham số
không

công khai trống setIcon (BitmapDescriptor iconDescriptor)

Đặt biểu tượng cho điểm đánh dấu.

Tham số
iconDescriptor nếu rỗng, điểm đánh dấu mặc định sẽ được sử dụng.

công khai trống setInfoWindowAnchor (float neoU; nổi neoV)

Chỉ định điểm trong hình ảnh điểm đánh dấu mà tại đó cửa sổ thông tin sẽ được cố định được hiển thị. Tham số này được chỉ định trong cùng một hệ toạ độ với điểm neo. Hãy xem setAnchor(float, float) để biết thêm chi tiết. Giá trị mặc định là phần trên cùng của hình ảnh.

Tham số
anchorU Toạ độ u của điểm neo cửa sổ thông tin, là tỷ lệ giữa chiều rộng hình ảnh (trong phạm vi [0, 1]).
anchorV toạ độ v của điểm neo cửa sổ thông tin, là tỷ lệ chiều cao hình ảnh (trong phạm vi [0, 1]).

công khai trống setPosition (LatLng latlng)

Đặt vị trí của điểm đánh dấu.

Tham số
vĩ độ

công khai trống setRotation (xoay số thực)

Đặt xoay điểm đánh dấu theo độ theo chiều kim đồng hồ quanh điểm neo của điểm đánh dấu. Trục xoay vuông góc với điểm đánh dấu. Mức xoay 0 tương ứng với vị trí mặc định của điểm đánh dấu.

Tham số
xoay

công khai trống setSnippet (Đoạn mã chuỗi)

Đặt đoạn mã của điểm đánh dấu.

Tham số
đoạn trích nếu rỗng, đoạn mã sẽ bị xoá.

công khai trống setTag (Thẻ đối tượng)

Đặt thẻ cho điểm đánh dấu.

Bạn có thể sử dụng thuộc tính này để liên kết một Object tuỳ ý với điểm đánh dấu này. Để Ví dụ: Object có thể chứa dữ liệu về nội dung của điểm đánh dấu. Cách này dễ hơn so với việc lưu trữ một Map<Marker, Object> riêng biệt. Một ví dụ khác, bạn có thể liên kết Mã String tương ứng với mã nhận dạng của một tập dữ liệu. SDK Google Maps dành cho Android cũng không được đọc và ghi thuộc tính này. Bạn có trách nhiệm gọi setTag(null) để xoá thẻ khi không cần nữa để ngăn chặn rò rỉ bộ nhớ trong ứng dụng của bạn.

Tham số
thẻ nếu rỗng, thẻ sẽ bị xoá.

công khai trống setTitle (Tiêu đề chuỗi)

Đặt tiêu đề của điểm đánh dấu.

Tham số
tiêu đề nếu rỗng, tiêu đề sẽ bị xoá.

công khai trống setVisible (boolean visible)

Đặt mức độ hiển thị của điểm đánh dấu này. Nếu bạn đặt chính sách này thành false và cửa sổ thông tin đang bật đang hiển thị cho điểm đánh dấu này, thao tác này sẽ ẩn cửa sổ thông tin.

Tham số
hiển thị

công khai trống setZIndex (nổi zIndex)

Đặt zIndex của điểm đánh dấu.

Tham số
zIndex

công khai trống showInfoWindow ()

Hiển thị cửa sổ thông tin của điểm đánh dấu này trên bản đồ, nếu điểm đánh dấu này isVisible().

Gửi
IllegalArgumentException nếu marker không có trên bản đồ này