Theo mặc định, các địa điểm yêu thích (POI) sẽ xuất hiện trên bản đồ cơ sở cùng với các biểu tượng tương ứng. POI bao gồm công viên, trường học, toà nhà chính phủ và nhiều địa điểm khác.
Ngoài ra, các POI doanh nghiệp sẽ xuất hiện theo mặc định trên bản đồ khi loại bản đồ là normal. POI doanh nghiệp đại diện cho các doanh nghiệp như cửa hàng, nhà hàng, khách sạn và nhiều doanh nghiệp khác. POI doanh nghiệp trên bản đồ trong nhà (sơ đồ mặt bằng) chỉ xuất hiện trên bản đồ ở chế độ
đơn giản.
POI tương ứng với Mã địa điểm, như được xác định trong Places SDK cho Android. Ví dụ: công viên giải trí là POI, nhưng những thứ như đài phun nước thường không phải là POI (trừ phi chúng có ý nghĩa quan trọng về mặt quốc gia hoặc lịch sử).
Lắng nghe các sự kiện nhấp chuột vào POI
Nếu muốn phản hồi khi người dùng nhấn vào một POI, bạn có thể sử dụng
OnPoiClickListener như trong mã mẫu sau:
Kotlin
map.setOnPoiClickListener { poi -> Toast.makeText( context, """Clicked: ${poi.name} Place ID:${poi.placeId} Latitude:${poi.latLng.latitude} Longitude:${poi.latLng.longitude}""", Toast.LENGTH_SHORT ).show() }
Java
map.setOnPoiClickListener(new GoogleMap.OnPoiClickListener() { @Override public void onPoiClick(PointOfInterest poi) { Toast.makeText(context, "Clicked: " + poi.name + "\nPlace ID:" + poi.placeId + "\nLatitude:" + poi.latLng.latitude + " Longitude:" + poi.latLng.longitude, Toast.LENGTH_SHORT).show(); } });
POI xuất hiện trên bản đồ theo mặc định, nhưng không có giao diện người dùng mặc định khi nhấp. Tức là API không tự động hiển thị cửa sổ thông tin hoặc bất kỳ giao diện người dùng nào khác khi người dùng nhấn vào một POI.
Như ví dụ ở trên cho thấy, bạn đặt
OnPoiClickListener trên bản đồ bằng cách
gọi
GoogleMap.setOnPoiClickListener(OnPoiClickListener).
Khi người dùng nhấp (nhấn) vào một POI, ứng dụng của bạn sẽ nhận được sự kiện
OnPoiClick(PointOfInterest) cho biết địa điểm yêu thích (POI) mà người dùng đã nhấp. The
PointOfInterest chứa toạ độ vĩ độ/kinh độ,
Mã địa điểm và tên của địa điểm yêu thích.
Ngừng hiển thị POI trên bản đồ
Bạn có thể ẩn các địa điểm yêu thích (POI) bằng cách áp dụng kiểu tuỳ chỉnh cho tất cả POI hoặc cho các danh mục POI cụ thể.
Khai báo kiểu JSON sau đây sẽ ẩn tất cả địa điểm yêu thích là doanh nghiệp trên bản đồ:
[
{
"featureType": "poi.business",
"stylers": [
{ "visibility": "off" }
]
}
]
Một ví dụ khác là JSON sau đây giúp đơn giản hoá việc hiển thị tất cả danh mục POI:
[
{
"featureType": "poi",
"stylers": [
{ "visibility": "simplified" }
]
}
]
Để biết mã Java và các thông tin chi tiết khác, hãy xem hướng dẫn ẩn các tính năng trên bản đồ bằng cách tạo kiểu.