مؤلفه «جستجوی پیشرفته جاها»

نسخه Advanced مؤلفه «جستجوی جاها» همان ویژگی‌های Place Search Essentials را ارائه می‌دهد. همچنین به شما امکان می‌دهد دکمه‌های کنش مؤلفه را پیکربندی کنید و گزینه‌های جستجو و فیلتر کردن را روی مرورها و رسانه‌هایی که نشان داده می‌شود اعمال کنید.

پیکربندی پیشرفته «جستجوی جاها»

برای دسترسی به ویژگی‌های پیشرفته، از AdvancedPlaceSearchFragment استفاده کنید.

پیکربندی دکمه‌های کنش

از میانای PlaceActionProvider در AdvancedPlaceSearchFragment برای تعریف و سفارشی‌سازی دکمه‌های کنش استفاده کنید.

الزامات اسناددهی تصویری

نمای «جستجوی مکان» AdvancedPlace با دکمه‌های سفارشی‌سازی‌شده
نتیجه «جستجوی جاها» با دکمه سفارشی‌سازی‌شده

مهم: باید برای کاربران روشن کنید که دکمه کنش سفارشی چه زمانی اطلاعات کاربر را با شخص ثالثی غیراز Google هم‌رسانی خواهد کرد. الزامات ارجاع تصویری را ببینید.

این نمونه تصویر سفارشی‌ای را نشان می‌دهد که به‌وضوح مشخص می‌کند اطلاعات کاربر به «Altostrat» ارسال خواهد شد.

اعمال گزینه‌های جستجو و فیلتر کردن

از میاناهای SearchMediaOptions و SearchReviewsOptions در AdvancedPlaceSearchFragment برای فعال کردن جستجو و فیلتر کردن رسانه‌ها یا مرورها استفاده کنید.

نمونه‌های «جستجوی پیشرفته جاها»

ایجاد قطعه 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)


        

گوش دادن به نتایج

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)
    }
}