Composant Advanced Place Search

La version avancée du composant Place Search offre les mêmes fonctionnalités que Place Search Essentials. Elle vous permet également de configurer les boutons d'action du composant et d'appliquer des options de recherche et de filtrage aux avis et aux contenus multimédias qui s'affichent.

Configuration d'Advanced Place Search

Utilisez AdvancedPlaceSearchFragment pour accéder aux fonctionnalités avancées.

Configurer les boutons d'action

Utilisez l'interface PlaceActionProvider de AdvancedPlaceSearchFragment pour définir et personnaliser les boutons d'action.

Exigences concernant l'attribution visuelle

Vue AdvancedPlace Search avec des boutons personnalisés
Résultat de recherche de lieux avec un bouton personnalisé

Important : Vous devez indiquer clairement aux utilisateurs quand un bouton d'action personnalisé partagera des informations les concernant avec un tiers autre que Google. Consultez les exigences concernant l'attribution visuelle.

L'exemple montre une image personnalisée qui indique clairement que les informations de l'utilisateur seront envoyées à "Altostrat".

Appliquer des options de recherche et de filtrage

Utilisez les interfaces SearchMediaOptions et SearchReviewsOptions de AdvancedPlaceSearchFragment pour activer la recherche et le filtrage de contenus multimédias ou d'avis.

Exemples d'Advanced Place Search

Créer un fragment AdvancedPlaceSearch

Kotlin

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

// How the fragment is created
AdvancedPlaceSearchFragment.newInstance(
          selectedContent,
          orientation,
          R.style.BrandedPlaceDetailsTheme,
        )

// Fragment supports the same configs that PlaceSearchFragment supported
fragment.preferTruncation = false
fragment.attributionPosition = AttributionPosition.BOTTOM
fragment.selectable = true

        

Kotlin

// Performing a search works the same as with a regular placeSearchFragment.

advancedPlaceSearchFragment.configureFromSearchByTextRequest(searchByTextRequest)

advancedPlaceSearchFragment.configureFromSearchNearbyRequest(searchNearbyRequest)


        

Écouter les résultats

Kotlin

// attach the existing PlaceSearchFragmentListener to get notified about 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, its functionally identical but with a new name.  
      is AdvancedPlaceListFragment -> fragment.registerListener(advancedPlaceListFragmentListener)
    }
}