عنصر «جستجوی پیشرفته مکان»

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

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

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