繁体   English   中英

Flutter 谷歌在文本表单字段上放置自动完成功能

[英]Flutter google places autocomplete on text form field

我想要一个带有 flutter google 地方自动完成的文本表单字段,即当用户 select 的位置时,文本将 go 到文本表单字段。

我有这段代码,用户单击文本表单字段,点击时打开搜索地址栏,但选择地址后文本不会显示在文本表单字段中。

代码

TextFormField(
                          decoration: textInputDecoration.copyWith(
                            hintText: "Enter Company Address",
                            prefixIcon: Icon(Icons.map),
                          ),
                          onTap: () async {
                            Prediction p = await PlacesAutocomplete.show(
                              context: context,
                              radius: 10000000,
                              types: [],
                              strictbounds: false,
                              apiKey: kGoogleApiKey,
                              mode: Mode.overlay,
                              language: "en",
                              components: [Component(Component.country, "nz")],
                            );
                          },
                          validator: (val) =>
                              val.isEmpty ? 'Enter address' : null,
                          onChanged: (val) async {
                            setState(() => address = val);
                          },
                        ),

首先,您必须创建一个TextEditingController _place = TextEditingController()

然后,当结果从 API 返回时,例如components[0] ,您将此String值分配给 `controller.

_place.text = result 它甚至会在不使用 setState 的情况下更改 UI。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM