โดยค่าเริ่มต้น จุดที่น่าสนใจ (จุดที่น่าสนใจ) จะปรากฏบนแผนที่ฐานพร้อมกับไอคอนที่เกี่ยวข้อง ซึ่งรวมถึงสวนสาธารณะ โรงเรียน อาคารรัฐบาล และอื่นๆ
นอกจากนี้ จุดที่น่าสนใจสำหรับธุรกิจจะปรากฏบนแผนที่โดยค่าเริ่มต้นเมื่อประเภทแผนที่เป็นnormal
จุดที่น่าสนใจของธุรกิจแสดงถึงธุรกิจต่างๆ เช่น ร้านค้า ร้านอาหาร โรงแรม และอื่นๆ จุดที่น่าสนใจสำหรับธุรกิจในแผนที่ในอาคาร (ผังพื้น) จะปรากฏในแผนที่โหมด Lite เท่านั้น
จุดที่น่าสนใจจะสอดคล้องกับ Place ID ตามที่ระบุไว้ใน Places SDK สำหรับ Android เช่น สวนสาธารณะเพื่อการพักผ่อนหย่อนใจเป็นจุดที่น่าสนใจ แต่โดยทั่วไปแล้วน้ำพุไม่ใช่จุดที่น่าสนใจ (เว้นแต่จะมีคุณค่าทางประวัติศาสตร์หรือระดับชาติ)
รอรับเหตุการณ์การคลิกในจุดที่น่าสนใจ
หากต้องการตอบสนองต่อผู้ใช้ที่แตะจุดที่น่าสนใจ คุณสามารถใช้ OnPoiClickListener
ดังที่แสดงในตัวอย่างโค้ดต่อไปนี้
Kotlin
internal class OnPoiClickDemoActivity : AppCompatActivity(), OnMapReadyCallback, OnPoiClickListener { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.poi_click_demo) val mapFragment = supportFragmentManager.findFragmentById(R.id.map) as SupportMapFragment mapFragment.getMapAsync(this) } override fun onMapReady(map: GoogleMap) { map.setOnPoiClickListener(this) } override fun onPoiClick(poi: PointOfInterest) { Toast.makeText(this, """Clicked: ${poi.name} Place ID:${poi.placeId} Latitude:${poi.latLng.latitude} Longitude:${poi.latLng.longitude}""", Toast.LENGTH_SHORT ).show() } }
Java
class OnPoiClickDemoActivity extends AppCompatActivity implements OnMapReadyCallback, GoogleMap.OnPoiClickListener { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.poi_click_demo); SupportMapFragment mapFragment; mapFragment = (SupportMapFragment) getSupportFragmentManager().findFragmentById(R.id.map); mapFragment.getMapAsync(this); } @Override public void onMapReady(GoogleMap map) { map.setOnPoiClickListener(this); } @Override public void onPoiClick(PointOfInterest poi) { Toast.makeText(this, "Clicked: " + poi.name + "\nPlace ID:" + poi.placeId + "\nLatitude:" + poi.latLng.latitude + " Longitude:" + poi.latLng.longitude, Toast.LENGTH_SHORT).show(); } }
จุดที่น่าสนใจจะปรากฏบนแผนที่โดยค่าเริ่มต้น แต่จะไม่มี UI การคลิกเริ่มต้น กล่าวคือ API จะไม่แสดงหน้าต่างข้อมูลหรืออินเทอร์เฟซผู้ใช้อื่นๆ โดยอัตโนมัติเมื่อผู้ใช้แตะจุดที่น่าสนใจ
ดังที่ตัวอย่างข้างต้นแสดง คุณจะตั้งค่า OnPoiClickListener
บนแผนที่ได้โดยเรียกใช้ GoogleMap.setOnPoiClickListener(OnPoiClickListener)
เมื่อผู้ใช้คลิก (แตะ) จุดที่น่าสนใจ แอปของคุณจะได้รับเหตุการณ์ OnPoiClick(PointOfInterest)
ที่ระบุจุดที่น่าสนใจ (POI) ที่ผู้ใช้คลิก PointOfInterest
มีพิกัดละติจูด/ลองจิจูด รหัสสถานที่ และชื่อจุดที่น่าสนใจ
หยุดไม่ให้จุดที่น่าสนใจแสดงบนแผนที่
คุณซ่อนจุดที่น่าสนใจ (จุดที่น่าสนใจ) ได้โดยการใช้สไตล์ที่กำหนดเองกับจุดที่น่าสนใจทั้งหมดหรือจุดที่น่าสนใจบางหมวดหมู่
การประกาศรูปแบบ JSON ต่อไปนี้จะซ่อนจุดที่น่าสนใจทั้งหมดของธุรกิจบนแผนที่
[
{
"featureType": "poi.business",
"stylers": [
{ "visibility": "off" }
]
}
]
อีกตัวอย่างหนึ่งคือ JSON ต่อไปนี้แสดงสถานที่น่าสนใจทุกหมวดหมู่อย่างง่าย
[
{
"featureType": "poi",
"stylers": [
{ "visibility": "simplified" }
]
}
]
ดูโค้ด Java และรายละเอียดอื่นๆ ได้ที่คู่มือการซ่อนองค์ประกอบแผนที่ด้วยการจัดรูปแบบ