Gelişmiş Yer Arama bileşeni
Yer Arama bileşeninin Advanced sürümü, Yer Arama Essentials ile aynı özellikleri sunar. Ayrıca, bileşenin işlem düğmelerini yapılandırmanıza ve gösterilen yorumlara ve medyaya arama ve filtreleme seçenekleri uygulamanıza olanak tanır.
Gelişmiş Yer Arama yapılandırması
Gelişmiş özelliklere erişmek için AdvancedPlaceSearchFragment simgesini kullanın.
İşlem düğmelerini yapılandırma
İşlem düğmelerini tanımlamak ve özelleştirmek için AdvancedPlaceSearchFragment'nin PlaceActionProvider arayüzünü kullanın.
Görsel ilişkilendirme koşulları
Önemli: Özel işlem düğmesi, kullanıcı bilgilerini Google dışında bir üçüncü tarafla paylaştığında bunu kullanıcılara açıkça belirtmeniz gerekir. Görsel ilişkilendirme koşullarını inceleyin.
Örnekte, kullanıcı bilgilerinin "Altostrat"a gönderileceğini açıkça belirten özel bir resim gösterilmektedir.
Arama ve filtreleme seçeneklerini uygulama
Medya veya yorumlarda arama ve filtreleme özelliğini etkinleştirmek için AdvancedPlaceSearchFragment'nin SearchMediaOptions ve SearchReviewsOptions arayüzlerini kullanın.
Gelişmiş Yer Arama örnekleri
AdvancedPlaceSearch parçası oluşturma
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
Arama yapma
Kotlin
// Performing a search works the same as with a regular placeSearchFragment. advancedPlaceSearchFragment.configureFromSearchByTextRequest(searchByTextRequest) advancedPlaceSearchFragment.configureFromSearchNearbyRequest(searchNearbyRequest)
Sonuçları dinleme
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) } }