Lớp phủ mặt đất là hình ảnh được cố định vào bản đồ. Lớp phủ mặt đất có những đặc điểm sau thuộc tính:
- Vị trí
- Có hai cách để chỉ định vị trí của lớp phủ mặt đất:
- Sử dụng vị trí: Bạn phải cung cấp hình ảnh của lớp phủ mặt đất,
LatLng
điểm neo sẽ được cố định và chiều rộng của lớp phủ (tính bằng mét). Chiến lược phát hành đĩa đơn theo mặc định, neo nằm cách 50% từ đầu hình ảnh và 50% từ bên trái của hình ảnh. Bạn có thể thay đổi chế độ này. Bạn có thể tuỳ ý cung cấp chiều cao của lớp phủ (trong mét). Nếu bạn không cung cấp chiều cao của lớp phủ, nó sẽ tự động được tính toán để duy trì tỷ lệ hình ảnh. - Sử dụng Giới hạn: Bạn phải cung cấp
LatLngBounds
sẽ chứa hình ảnh.
IllegalArgumentException
sẽ được gửi khi lớp phủ mặt đất đã được thêm vào bản đồ. Hơn nữa, bạn chỉ phải chỉ định vị trí bằng một trong các phương thức trong đối tượngGroundOverlayOptions
; nếu không, hệ thống sẽ gửiIllegalStateException
khi chỉ định bằng phương thức thứ hai. - Sử dụng vị trí: Bạn phải cung cấp hình ảnh của lớp phủ mặt đất,
- Bài đăng có hình ảnh
- Hình ảnh (dưới dạng
BitmapDescriptor
) sẽ dùng cho lớp phủ này. Hình ảnh này sẽ điều chỉnh theo tỷ lệ cho vừa với vị trí được cung cấp. Bạn phải chỉ định hình ảnh trước khi thêm mặt đất phủ lên bản đồ; nếu không,IllegalArgumentException
sẽ được gửi khi đã được thêm vào bản đồ. - Ổ đĩa
- Khoảng xoay hình ảnh theo chiều kim đồng hồ. Trung tâm của xoay sẽ là quảng cáo cố định của hình ảnh. Đây là giá trị không bắt buộc và góc phương vị mặc định là 0, tức là ảnh được căn chỉnh sao cho hướng lên là hướng bắc.
- zIndex
- Thứ tự vẽ lớp phủ trên mặt đất này so với các lớp phủ khác (bao gồm
Polyline
vàTileOverlay
, nhưng không phảiMarker
). Lớp phủ có zIndex lớn hơn được vẽ trên lớp phủ có zIndex nhỏ hơn. Thứ tự lớp phủ với cùng một giá trị zIndex là tuỳ ý. Đây là giá trị không bắt buộc và zIndex mặc định là 0. - Sự minh bạch
- Độ trong suốt của lớp phủ mặt đất trong phạm vi
[0..1]
, trong đó0
có nghĩa là lớp phủ mờ đục và1
có nghĩa là lớp phủ hoàn toàn trong suốt. Nếu giá trị được chỉ định bitmap đã trong suốt một phần, độ trong suốt của từng pixel sẽ được điều chỉnh theo tỷ lệ theo đó (ví dụ: nếu một pixel trong bitmap có giá trị alpha là 200 và bạn chỉ định độ trong suốt của lớp phủ mặt đất là 0,25, thì pixel sẽ được kết xuất trên màn hình có giá trị alpha là 150). Thông số kỹ thuật của thuộc tính này là không bắt buộc và độ trong suốt mặc định là 0 (không rõ ràng). - Chế độ hiển thị
- Cho biết lớp phủ mặt đất nhìn thấy được hay không nhìn thấy được, tức là lớp đó được vẽ trên
bản đồ. Một lớp phủ mặt đất vô hình không được vẽ nhưng vẫn giữ lại tất cả thuộc tính khác của nó.
Đây là chế độ không bắt buộc và chế độ hiển thị mặc định là
true
, tức là hiển thị. - Khả năng nhấp
- Nếu bạn muốn xử lý các sự kiện được kích hoạt khi người dùng nhấp vào lớp phủ mặt đất, hãy đặt tuỳ chọn này
vào
true
. Bạn có thể thay đổi giá trị này bất kỳ lúc nào. Giá trị mặc định làfalse
. Nếu bạn đặt thuộc tính này thànhtrue
thì ứng dụng của bạn sẽ nhận được thông báo đến Đã đăng kýGoogleMap.OnGroundOverlayClickListener
đến hết ngàysetOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
. - Thẻ
Object
liên kết với lớp phủ mặt đất. Ví dụ:Object
có thể chứa dữ liệu về nội dung mà lớp phủ mặt đất thể hiện. Việc này dễ dàng hơn việc lưu trữ phân táchMap<GroundOverlay, Object>
. Một ví dụ khác: bạn có thể liên kết mã nhận dạngString
tương ứng với mã nhận dạng trong 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.
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.
BitmapDescriptor imageDescriptor = ...; // get an image.
LatLngBounds bounds = ...; // get a bounds
// Adds a ground overlay with 50% transparency.
GroundOverlay groundOverlay = map.addGroundOverlay(new GroundOverlayOptions()
.image(imageDescriptor)
.positionFromBounds(bounds)
.transparency(0.5));
Tóm tắt về phương thức công khai
boolean |
bằng(Đối tượng khác)
Kiểm thử xem
GroundOverlay này có bằng một mã khác hay không. |
số thực dấu phẩy động |
getBearing()
Lấy góc chịu lực của lớp phủ mặt đất theo độ theo chiều kim đồng hồ từ hướng bắc.
|
LatLngBounds |
getBounds()
Lấy ranh giới cho lớp phủ mặt đất.
|
số thực dấu phẩy động |
getHeight()
Lấy chiều cao của lớp phủ mặt đất.
|
Chuỗi |
getId()
Lấy mã nhận dạng của lớp phủ mặt đất này.
|
LatLng |
getPosition()
Lấy vị trí của điểm neo.
|
Đối tượng |
getTag()
Lấy thẻ cho vòng kết nối.
|
số thực dấu phẩy động |
getTransparency()
Xem độ trong suốt của lớp phủ mặt đất này.
|
số thực dấu phẩy động |
getWidth()
Lấy chiều rộng của lớp phủ mặt đất.
|
số thực dấu phẩy động |
getZIndex()
Lấy zIndex của lớp phủ mặt đất này.
|
int |
hashCode()
|
boolean |
isClickable()
Xem khả năng nhấp của lớp phủ mặt đất.
|
boolean |
isVisible()
Xem chế độ hiển thị của lớp phủ mặt đất này.
|
void |
remove()
Xoá lớp phủ mặt đất này khỏi bản đồ.
|
void |
setBearing(vòng bi nổi)
Đặt góc chịu lực của lớp phủ mặt đất (hướng mà trục tung của mặt đất
điểm phủ) theo độ theo chiều kim đồng hồ từ hướng bắc.
|
void |
setClickable(boolean có thể nhấp)
Đặt khả năng nhấp của lớp phủ mặt đất.
|
void |
setDimensions(chiều rộng số thực, chiều cao của số thực)
Đặt kích thước của lớp phủ mặt đất.
|
void |
setDimensions(chiều rộng số thực)
Đặt chiều rộng của lớp phủ mặt đất.
|
void | |
void | |
void |
setPositionFromBounds(giới hạn LatLngBounds)
Đặt vị trí của lớp phủ mặt đất bằng cách khớp lớp phủ đó với
LatLngBounds cho trước. |
void |
setTag(Thẻ đối tượng)
Đặt thẻ cho lớp phủ mặt đất.
|
void |
setTransparency(độ trong suốt của số thực)
Đặt độ trong suốt của lớp phủ mặt đất này.
|
void |
setVisible(boolean visible)
Đặt chế độ hiển thị của lớp phủ mặt đất này.
|
void |
setZIndex(nổi zIndex)
Đặt zIndex của lớp phủ mặt đất này.
|
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 GroundOverlay
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 getBearing ()
Lấy góc chịu lực của lớp phủ mặt đất theo độ theo chiều kim đồng hồ từ hướng bắc.
Giá trị trả về
- góc chịu lực của lớp phủ mặt đất.
công khai LatLngBounds getBounds ()
Lấy ranh giới cho lớp phủ mặt đất. Phương thức này bỏ qua việc xoay lớp phủ mặt đất.
Giá trị trả về
LatLngBounds
chứa lớp phủ mặt đất, bỏ qua hướng xoay.
công khai độ chính xác đơn getHeight ()
Lấy chiều cao của lớp phủ mặt đất.
Giá trị trả về
- chiều cao của lớp phủ mặt đất tính bằng mét.
công khai Chuỗi văn bản getId ()
Lấy mã nhận dạng của lớp phủ mặt đất này. Giá trị nhận dạng này sẽ là duy nhất trong số tất cả GroundOverlays trên bản đồ.
Giá trị trả về
- mã nhận dạng của lớp phủ mặt đất này.
công khai LatLng getPosition ()
Lấy vị trí của điểm neo.
Giá trị trả về
- vị trí trên bản đồ (
LatLng
).
công khai Đối tượng getTag ()
Lấy thẻ cho vòng kết nối.
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 độ chính xác đơn getTransparency ()
Xem độ trong suốt của lớp phủ mặt đất này.
Giá trị trả về
- độ trong suốt của lớp phủ mặt đất này.
công khai độ chính xác đơn getWidth ()
Lấy chiều rộng của lớp phủ mặt đất.
Giá trị trả về
- chiều rộng của lớp phủ mặt đất tính bằng mét.
công khai độ chính xác đơn getZIndex ()
Lấy zIndex của lớp phủ mặt đất này.
Giá trị trả về
- zIndex của lớp phủ mặt đất.
công khai đánh chặn hashCode ()
công khai boolean isClickable ()
Xem khả năng nhấp của lớp phủ mặt đất. Nếu có thể nhấp vào lớp phủ mặt đất, ứng dụng của bạn sẽ
nhận thông báo cho GoogleMap.OnGroundOverlayClickListener
khi người dùng
nhấp vào lớp phủ mặt đất. Trình nghe sự kiện này được đăng ký thông qua setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
.
Giá trị trả về
true
nếu lớp phủ mặt đất có thể nhấp được; nếu không, sẽ trả vềfalse
.
công khai boolean isVisible ()
Xem chế độ hiển thị của lớp phủ mặt đất này. Xin lưu ý rằng giá trị này sẽ không trả về cho dù mặt đất thực sự đang ở trên màn hình, nhưng liệu lớp phủ có được vẽ không nếu nằm trong khung nhìn.
Giá trị trả về
- khả năng hiển thị của lớp phủ mặt đất này.
công khai trống xoá ()
Xoá lớp phủ mặt đất này khỏi bản đồ. Sau khi bạn đã xoá lớp phủ trên mặt đất, hành vi này về tất cả phương thức của nó vẫn chưa được xác định.
công khai trống setBearing (gờ đỡ nổi)
Đặt góc chịu lực của lớp phủ mặt đất (hướng mà trục tung của mặt đất điểm phủ) theo độ theo chiều kim đồng hồ từ hướng bắc. Việc xoay được thực hiện đối với quảng cáo cố định điểm.
Tham số
đang mang | góc phương bắc theo độ |
---|
công khai trống setClickable (boolean có thể nhấp)
Đặt khả năng nhấp của lớp phủ mặt đất. Nếu có thể nhấp vào lớp phủ mặt đất, ứng dụng của bạn sẽ
nhận thông báo cho GoogleMap.OnGroundOverlayClickListener
khi người dùng
nhấp vào lớp phủ mặt đất. Trình nghe sự kiện này được đăng ký thông qua setOnGroundOverlayClickListener(GoogleMap.OnGroundOverlayClickListener)
.
Tham số
có thể nhấp | Cài đặt khả năng nhấp mới cho lớp phủ mặt đất. |
---|
công khai trống setDimensions (chiều rộng của số thực dấu phẩy động, chiều cao của số thực)
Đặt kích thước của lớp phủ mặt đất. Hình ảnh sẽ bị kéo giãn cho vừa với kích thước.
Tham số
chiều rộng | chiều rộng tính bằng mét |
---|---|
độ cao | chiều cao tính bằng mét |
công khai trống setDimensions (chiều rộng của số thực dấu phẩy động)
Đặt chiều rộng của lớp phủ mặt đất. Chiều cao của lớp phủ mặt đất sẽ được điều chỉnh để duy trì tỷ lệ khung hình.
Tham số
chiều rộng | chiều rộng tính bằng mét |
---|
công khai trống setImage (BitmapDescriptor imageDescriptor)
Đặt hình ảnh cho Lớp phủ mặt đất. Hình ảnh mới sẽ chiếm cùng ranh giới với hình ảnh cũ hình ảnh.
Tham số
imageDescriptor | BitmapDescriptor để sử dụng cho lớp phủ mặt đất này.
|
---|
công khai trống setPosition (LatLng latLng)
Đặt vị trí của lớp phủ mặt đất bằng cách thay đổi vị trí của điểm neo. Bảo quản tất cả thuộc tính khác của hình ảnh.
Tham số
latLng | LatLng là vị trí mới để đặt điểm neo.
|
---|
công khai trống setPositionFromBounds (LatLngBounds)
Đặt vị trí của lớp phủ mặt đất bằng cách khớp lớp phủ đó với LatLngBounds
cho trước. Chiến dịch này
phương thức này sẽ bỏ qua sự xoay (giá đỡ) của lớp phủ mặt đất khi định vị nó, nhưng phương thức
góc phương tiện sẽ vẫn được sử dụng khi vẽ.
Tham số
ranh giới | LatLngBounds để đặt lớp phủ mặt đất
|
---|
công khai trống setTag (Thẻ đối tượng)
Đặt thẻ cho lớp phủ mặt đất.
Bạn có thể sử dụng thuộc tính này để liên kết một Object
tuỳ ý với lớp phủ mặt đất này.
Ví dụ: Object
có thể chứa dữ liệu về nội dung mà lớp phủ mặt đất thể hiện. Chiến dịch này
dễ dàng hơn so với việc lưu trữ một Map<GroundOverlay, Object>
riêng biệt. Một ví dụ khác là bạn
có thể liên kết mã nhận dạng 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 không đọc cũng không ghi thuộc tính này. Bạn có trách nhiệm gọi setTag(null)
để xoá thẻ này khi không cần nữa, nhằm ngăn chặn tình trạng rò rỉ bộ nhớ trong ứng dụng.
Tham số
thẻ | nếu rỗng, thẻ sẽ bị xoá. |
---|
công khai trống setTransparency (độ trong suốt của độ chính xác đơn)
Đặt độ trong suốt của lớp phủ mặt đất này. Hãy xem tài liệu ở đầu lớp học này để biết thêm thông tin.
Tham số
độ trong suốt | số thực dấu phẩy động trong phạm vi [0..1] , trong đó 0 có nghĩa là mặt đất
lớp phủ mờ đục và 1 có nghĩa là lớp phủ mặt đất trong suốt.
|
---|
công khai trống setVisible (boolean visible)
Đặt chế độ hiển thị của lớp phủ mặt đất này. Khi không nhìn thấy, lớp phủ mặt đất sẽ không được vẽ, nhưng giữ lại mọi thuộc tính khác.
Tham số
hiển thị | nếu là true , thì lớp phủ mặt đất sẽ hiển thị; nếu là false thì sẽ không được
|
---|
công khai trống setZIndex (nổi zIndex)
Đặt zIndex của lớp phủ mặt đất này. Hãy xem tài liệu ở đầu lớp học này để biết thêm của bạn.
Tham số
zIndex | zIndex của lớp phủ mặt đất này |
---|