רכיב מתקדם של רשימת מקומות
הרכיב 'רשימת מקומות מתקדמת' מאפשר לכם להגדיר ולהציג רשימה של מקומות. אפשר לציין עד 20 מקומות מאותו סט של זהויות שנתמכות על ידי רכיב פרטי המקום (מזהי מקומות, שמות משאבים של מקומות או קואורדינטות של קו רוחב וקו אורך).
אפשר לבחור בין תצוגה של רשימה אופקית או אנכית. כברירת מחדל, הכיוון שבו יוצג השידור במסך הוא אנכי. אותו מידע ואותן אפשרויות הגדרה שזמינים בכרטיסים של פרטי מקום מלאים וקומפקטיים זמינים לכל פריט ברשימה.
משתמשים בממשק PlaceActionProvider של AdvancedPlaceListFragment כדי ליצור רשימה.
חיוב
אתם מחויבים על כל בקשה לרשימה, וכל שינוי ברשימה הוא אירוע חדש לחיוב.
דוגמה
יצירת מקטע AdvancedPlaceList
Kotlin
// Initialize first Places.initializeWithNewPlacesApiEnabled(context, API_KEY) // how fragment is created AdvancedPlaceListFragment.newInstance( selectedContent, orientation, R.style.BrandedPlaceDetailsTheme, ) // fragments support the same configurations that PlaceSearchFragment supports fragment.preferTruncation = false fragment.attributionPosition = AttributionPosition.BOTTOM fragment.mediaSize = AdvancedPlaceListFragment.MediaSize.SMALL fragment.selectable = true
הצגת רשימת מקומות
Kotlin
// You can use resourceNames or placeIds advancedPlaceListFragment.configureFromPlaceIds(placeIds) advancedPlaceListFragment.configureFromResourceNames(resourceNames) // Alternatively, use coordinates, which are a list of LatLng: advancedPlaceListFragment.configureFromCoordinates(coordinates) // Uses reverse geocoding to get the place
האזנה לתוצאות
Kotlin
// Attach the existing PlaceSearchFragmentListener to get notified 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, it's functionally identical but with a new name. is AdvancedPlaceListFragment -> fragment.registerListener(advancedPlaceListFragmentListener) } }