Componente Advanced Place List
El componente Advanced Place List te permite definir y mostrar una lista de lugares. Puedes enumerar hasta 20 lugares del mismo conjunto de identidades que admite el componente Place Details (IDs de lugar, nombres de recursos de lugar o coordenadas de latitud y longitud).
Puedes elegir entre una visualización de lista horizontal o vertical. La orientación predeterminada es vertical. Para cada elemento de la lista, se encuentran disponibles la misma información y las mismas opciones de configuración que en las tarjetas de detalles del lugar compactas y completas.
Usa la interfaz PlaceActionProvider de AdvancedPlaceListFragment para crear una lista.
Facturación
Se te factura por cada solicitud de lista, y cualquier cambio en la lista es un evento facturable nuevo.
Ejemplo
Crea un fragmento 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
Cómo mostrar una lista de lugares
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
Escuchar los resultados
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) } }