Doanh nghiệp và các địa điểm yêu thích khác

Chọn nền tảng: Android iOS JavaScript

Theo mặc định, các địa điểm yêu thích (CUE) xuất hiện trên bản đồ cơ sở cùng với các biểu tượng tương ứng của chúng. Địa điểm yêu thích bao gồm công viên, trường học, tòa nhà chính phủ và nhiều địa điểm khác.

Ngoài ra, theo mặc định, POI doanh nghiệp sẽ xuất hiện trên bản đồ khi loại bản đồ là normal. Địa điểm yêu thích kinh doanh đại diện cho những doanh nghiệp như cửa hàng, nhà hàng, khách sạn và nhiều doanh nghiệp khác. Địa điểm yêu thích của doanh nghiệp trên bản đồ trong nhà (sơ đồ tầng) chỉ xuất hiện trên bản đồ chế độ thu gọn.

Địa điểm yêu thích (POI) tương ứng với một Mã địa điểm, như được xác định trong SDK Địa điểm dành cho Android. Ví dụ: công viên giải trí là địa điểm yêu thích (POI), nhưng những địa điểm như đài phun nước thường không phải là địa điểm yêu thích (trừ khi chúng có ý nghĩa quốc gia hoặc lịch sử).

Theo dõi các sự kiện nhấp chuột trên địa điểm yêu thích

Nếu muốn phản hồi việc người dùng nhấn vào một điểm yêu thích, bạn có thể sử dụng OnPoiClickListener như trong mã mẫu sau:

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

      

Địa điểm yêu thích (POI) sẽ 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. Điều này nghĩa 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 điểm yêu thích.

Như mẫu ở 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 địa điểm yêu thích (POI), ứng dụng của bạn sẽ nhận được một sự kiện OnPoiClick(PointOfInterest) cho biết địa điểm yêu thích (CUE) mà người dùng đã nhấp vào. PointOfInterest chứa vĩ độ/kinh độ, mã địa điểm và tên của địa điểm yêu thích.

Dừng địa điểm yêu thích hiển thị 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ả địa điểm yêu thích hoặc cho các danh mục địa điểm yêu thích cụ thể.

Khai báo kiểu JSON sau đây ẩn tất cả địa điểm yêu thích của doanh nghiệp trên bản đồ:

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

Ví dụ khác: 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 về cách ẩn các tính năng của bản đồ với kiểu.