โดยค่าเริ่มต้น จุดที่น่าสนใจ (จุดที่น่าสนใจ) จะปรากฏบนแผนที่พื้นฐานพร้อมกับไอคอนที่เกี่ยวข้อง ซึ่งรวมถึงสวนสาธารณะ โรงเรียน อาคารรัฐบาล และอื่นๆ
นอกจากนี้ จุดที่น่าสนใจสำหรับธุรกิจจะปรากฏบนแผนที่โดยค่าเริ่มต้นเมื่อประเภทแผนที่เป็นnormal
จุดที่น่าสนใจของธุรกิจแสดงถึงธุรกิจต่างๆ เช่น ร้านค้า ร้านอาหาร โรงแรม และอื่นๆ จุดที่น่าสนใจของธุรกิจในแผนที่ในอาคาร (ผังพื้น) จะปรากฏในแผนที่โหมด Lite เท่านั้น
จุดที่น่าสนใจจะสอดคล้องกับรหัสสถานที่ตามที่ระบุไว้ใน 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 และรายละเอียดอื่นๆ ได้ที่คู่มือการซ่อนองค์ประกอบแผนที่ด้วยการจัดรูปแบบ