ธุรกิจและจุดสนใจอื่นๆ

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ
เลือกแพลตฟอร์ม: Android iOS JavaScript

โดยค่าเริ่มต้น จุดสนใจ (POI) จะปรากฏในแผนที่พื้นฐานพร้อมกับไอคอนที่เกี่ยวข้อง จุดที่น่าสนใจ ได้แก่ สวนสาธารณะ โรงเรียน อาคารรัฐบาล และอื่นๆ

นอกจากนี้ จุดที่น่าสนใจของธุรกิจจะปรากฏโดยค่าเริ่มต้นบนแผนที่เมื่อประเภทแผนที่คือ normal จุดที่น่าสนใจของธุรกิจแสดงถึงธุรกิจต่างๆ เช่น ร้านค้า ร้านอาหาร โรงแรม และอื่นๆ จุดที่น่าสนใจของธุรกิจในแผนที่ในอาคาร (แผนผังชั้น) จะปรากฏในแผนที่โหมด Lite เท่านั้น

จุดที่น่าสนใจสอดคล้องกับรหัสสถานที่ตามที่ระบุใน SDK สถานที่สําหรับ Android เช่น สวนสาธารณะเพื่อสันทนาการเป็นจุดที่น่าสนใจ แต่สิ่งต่างๆ เช่น น้ําพุไม่ใช่จุดที่น่าสนใจ (เว้นแต่จะเป็นจุดสําคัญของประเทศหรือในประวัติศาสตร์)

ฟังเหตุการณ์การคลิกในจุดที่น่าสนใจ

หากต้องการตอบกลับผู้ใช้ที่แตะจุดที่น่าสนใจ ให้ใช้ OnPoiClickListener ดังที่แสดงในตัวอย่างโค้ดต่อไปนี้

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();
    }
}

      

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()
    }
}

      

จุดที่น่าสนใจจะปรากฏในแผนที่โดยค่าเริ่มต้น แต่ไม่มี UI เมื่อคลิกเริ่มต้น กล่าวคือ API จะไม่แสดงหน้าต่างข้อมูลหรืออินเทอร์เฟซผู้ใช้อื่นๆ โดยอัตโนมัติเมื่อผู้ใช้แตะจุดที่น่าสนใจ

จากตัวอย่างข้างต้น คุณตั้งค่า OnPoiClickListener ในแผนที่โดยเรียกใช้ GoogleMap.setOnPoiClickListener(OnPoiClickListener) เมื่อผู้ใช้คลิก (แตะ) ในจุดที่น่าสนใจ แอปของคุณจะได้รับเหตุการณ์ OnPoiClick(PointOfInterest) ซึ่งระบุจุดสนใจ (POI) ที่ผู้ใช้คลิก PointOfInterestมีพิกัดละติจูด/ลองจิจูด รหัสสถานที่ และชื่อจุดสนใจ

หยุดแสดงจุดที่น่าสนใจบนแผนที่

คุณซ่อนจุดสนใจ (POI) ได้โดยใช้รูปแบบที่กําหนดเองกับจุดที่น่าสนใจทั้งหมดหรือกับจุดที่น่าสนใจบางหมวดหมู่

การประกาศรูปแบบ JSON ต่อไปนี้จะซ่อนจุดที่น่าสนใจของธุรกิจทั้งหมดบนแผนที่

[
  {
    "featureType": "poi.business",
    "stylers": [
      { "visibility": "off" }
    ]
  }
]

อีกตัวอย่างหนึ่ง JSON ต่อไปนี้จะช่วยลดความซับซ้อนในการแสดงหมวดหมู่จุดที่น่าสนใจทุกประเภท

[
  {
    "featureType": "poi",
    "stylers": [
      { "visibility": "simplified" }
    ]
  }
]

สําหรับโค้ด Java และรายละเอียดอื่นๆ โปรดดูคู่มือการซ่อนฟีเจอร์แผนที่ด้วยการจัดรูปแบบ