Thành phần Tìm kiếm địa điểm nâng cao

Phiên bản Nâng cao của thành phần Tìm kiếm địa điểm có các tính năng giống như Nguyên tắc cơ bản của Tìm kiếm địa điểm. Bạn cũng có thể định cấu hình các nút thao tác của thành phần này và áp dụng các lựa chọn tìm kiếm và lọc cho những bài đánh giá và nội dung nghe nhìn xuất hiện.

Cấu hình nâng cao cho tính năng Tìm kiếm địa điểm

Sử dụng AdvancedPlaceSearchFragment để sử dụng các tính năng nâng cao.

Định cấu hình các nút hành động

Sử dụng giao diện PlaceActionProvider của AdvancedPlaceSearchFragment để xác định và tuỳ chỉnh các nút hành động.

Yêu cầu về thông tin ghi công bằng hình ảnh

Chế độ xem AdvancedPlace Search có các nút tuỳ chỉnh
Kết quả Tìm kiếm địa điểm có nút tuỳ chỉnh

Lưu ý quan trọng: Bạn phải cho người dùng biết rõ khi nào nút hành động tuỳ chỉnh sẽ chia sẻ thông tin người dùng với một bên thứ ba không phải là Google. Xem các yêu cầu về việc ghi nhận nguồn bằng hình ảnh.

Ví dụ này cho thấy một hình ảnh tuỳ chỉnh giúp người dùng biết rõ rằng thông tin của họ sẽ được gửi đến "Altostrat".

Áp dụng các lựa chọn tìm kiếm và lọc

Sử dụng giao diện SearchMediaOptionsSearchReviewsOptions của AdvancedPlaceSearchFragment để bật tính năng tìm kiếm và lọc nội dung nghe nhìn hoặc bài đánh giá.

Ví dụ về tính năng Tìm kiếm địa điểm nâng cao

Tạo một mảnh 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)


        

Nghe kết quả

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