Виджет Place Picker
Виджет PlacePicker предназначен для получения информации о местах, таких как заведения (например, здания, парки, музеи) и географические объекты (например, дороги, озёра, горы). Он предоставляет данные, такие как название, адрес, город, штат, страна, почтовый индекс и координаты широты-долготы.
Этот виджет особенно полезен в приложениях вроде сервисов бронирования такси. Например, его можно использовать для захвата точного местоположения и полного адреса пункта назначения, отображения этой информации на странице или интеграции с Google Maps.
Визуально PlacePicker выглядит как кнопка. При нажатии на неё вы можете искать место, вводя его название, и отображается выпадающий список подходящих местоположений. После выбора места его название отображается на кнопке, а дополнительные сведения доступны через переменную placePickerValue из Widget State.
Вот пример из демо-приложения:
- Place Picker требует ключ API Google Maps. См., как создать и добавить ключи API в FlutterFlow.
- Убедитесь, что вы включили Places API в консоли Cloud.
- Включите Billing для Google Maps Platform через консоль Cloud. Обратите внимание: без включения Billing для Google Maps Platform в списке автодополнения не будет отображаться ни одно место.
Добавление виджета Place Picker
Чтобы добавить виджет PlacePicker в проект:
По умолчанию виджет Place Picker содержит иконку и текст «Select Location» на кнопке. Вы можете изменить стилизацию и свойства этих элементов в панели Properties Panel справа.
Если вы оставите виджет Text, текст обновится до названия выбранного местоположения после выбора пользователем. Иконка и текст являются необязательными; настройте их в соответствии с требованиями вашего дизайна.
Использование значений PlacePicker
Сведения о выбранном месте сохраняются в пользовательском типе данных GooglePlace, предоставляемом FlutterFlow. Вы можете получить к ним доступ через Widget State > placePickerValue, который включает поля, такие как название, адрес, широта/долгота (LatLng), город, штат, страна и почтовый индекс. Эти значения можно использовать для отображения содержимого в виджетах Text или для выполнения условной логики на основе выбранного местоположения.