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
LatLngBoundssẽ chứa hình ảnh.
IllegalArgumentExceptionsẽ đượ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ửiIllegalStateExceptionkhi 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,IllegalArgumentExceptionsẽ đượ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
Polylinevà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 đó0có nghĩa là lớp phủ mờ đục và1có 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ànhtruethì ứ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ẻ
Objectliên kết với lớp phủ mặt đất. Ví dụ:Objectcó 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ạngStringtươ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ề
LatLngBoundschứ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;nullnế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ề
truenế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 |
|---|