Composant Advanced Place List
Le composant "Liste de lieux avancée" vous permet de définir et d'afficher une liste de lieux. Vous pouvez lister jusqu'à 20 lieux à partir du même ensemble d'identités compatibles avec le composant Place Details (ID de lieu, noms de ressources de lieu ou coordonnées de latitude/longitude).
Vous pouvez choisir d'afficher la liste horizontalement ou verticalement. L'orientation par défaut est verticale. Les mêmes informations et options de configuration que celles des fiches compactes et complètes d'informations sur les lieux sont disponibles pour chaque élément de la liste.
Utilisez l'interface PlaceActionProvider de AdvancedPlaceListFragment pour créer une liste.
Facturation
Chaque demande de liste vous est facturée, et toute modification apportée à la liste constitue un nouvel événement facturable.
Exemple
Créer un fragment 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
Afficher une liste d'adresses
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
Écouter les résultats
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) } }