Thành phần Danh sách địa điểm nâng cao

Thành phần Danh sách địa điểm nâng cao cho phép bạn xác định và hiển thị danh sách địa điểm. Bạn có thể liệt kê tối đa 20 địa điểm từ cùng một nhóm danh tính mà thành phần Chi tiết về địa điểm hỗ trợ (Mã địa điểm, Tên tài nguyên địa điểm hoặc toạ độ vĩ độ/kinh độ).

Bạn có thể chọn hiển thị danh sách theo chiều ngang hoặc chiều dọc. Hướng mặc định là hướng dọc. Mỗi mục trong danh sách đều có thông tin và các lựa chọn cấu hình giống như thẻ thông tin chi tiết về địa điểm ở chế độ thu gọn và đầy đủ.

Dùng giao diện PlaceActionProvider của AdvancedPlaceListFragment để tạo danh sách.

Thanh toán

Bạn sẽ bị tính phí cho mỗi yêu cầu về danh sách và mọi thay đổi đối với danh sách đều là một sự kiện mới có tính phí.

Ví dụ

Tạo một mảnh AdvancedPlaceList

Kotlin

// Initialize first
Places.initializeWithNewPlacesApiEnabled(context, API_KEY)

// how fragment is created
AdvancedPlaceListFragment.newInstance(
          selectedContent,
          orientation,
          R.style.BrandedPlaceDetailsTheme,
        )

// fragments support the same configurations that PlaceSearchFragment supports
fragment.preferTruncation = false
fragment.attributionPosition = AttributionPosition.BOTTOM
fragment.mediaSize = AdvancedPlaceListFragment.MediaSize.SMALL
fragment.selectable = true  

Hiện danh sách địa điểm

Kotlin

// You can use resourceNames or placeIds
advancedPlaceListFragment.configureFromPlaceIds(placeIds)

advancedPlaceListFragment.configureFromResourceNames(resourceNames)

// Alternatively, use coordinates, which are a list of LatLng:
advancedPlaceListFragment.configureFromCoordinates(coordinates)
// Uses reverse geocoding to get the place

Nghe kết quả

Kotlin

// Attach the existing PlaceSearchFragmentListener to get notified when places load or are selected from the results list.
override fun onAttachFragment(fragment: Fragment) {
    super.onAttachFragment(fragment)
    when (fragment) {
      // Reuse the placeSearchFragmetnListener from the Essentials version
      is AdvancedPlaceSearchFragment -> fragment.registerListener(placeSearchFragmentListener)
      // Use placeListFragmentListener, it's functionally identical but with a new name.  
      is AdvancedPlaceListFragment -> fragment.registerListener(advancedPlaceListFragmentListener)
    }
}