【发布时间】:2020-05-01 22:42:10
【问题描述】:
如何使用flutter google place包以及如何只在屏幕上实现它而不在flutter中打开新屏幕。
Flutter google place 包 - https://pub.dev/packages/flutter_google_places#-readme-tab-
【问题讨论】:
标签: google-maps flutter google-places-api
如何使用flutter google place包以及如何只在屏幕上实现它而不在flutter中打开新屏幕。
Flutter google place 包 - https://pub.dev/packages/flutter_google_places#-readme-tab-
【问题讨论】:
标签: google-maps flutter google-places-api
包支持Mode.overlay
当您调用 PlacesAutocomplete.show 时,将 mode 设置为 Mode.overlay
代码sn-p
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: <Widget>[
_buildDropdownMenu(),
RaisedButton(
onPressed: _handlePressButton,
child: Text("Search places"),
),
...
Widget _buildDropdownMenu() => DropdownButton(
value: _mode,
items: <DropdownMenuItem<Mode>>[
DropdownMenuItem<Mode>(
child: Text("Overlay"),
value: Mode.overlay,
),
DropdownMenuItem<Mode>(
child: Text("Fullscreen"),
value: Mode.fullscreen,
),
],
onChanged: (m) {
setState(() {
_mode = m;
});
},
);
...
Future<void> _handlePressButton() async {
// show input autocomplete with selected mode
// then get the Prediction selected
Prediction p = await PlacesAutocomplete.show(
context: context,
apiKey: kGoogleApiKey,
onError: onError,
mode: _mode,
language: "fr",
components: [Component(Component.country, "fr")],
);
displayPrediction(p, homeScaffoldKey.currentState);
}
您可以直接复制粘贴运行示例
完整的例子
https://github.com/fluttercommunity/flutter_google_places/blob/master/example/lib/main.dart
【讨论】: