有人能教我如何在flutter中使用地理编码从给定的地址获得经度和纬度吗?
我想得到坐标,用它们作为Map上的标记。
更新:下面是我的代码:
扩展状态{
late double _latitude;
late double _longitude;
@override
void initState(){
getLatLon();
super.initState();
}
Future <void> getLatLon() async {
GeoCode geoCode = GeoCode();
try {
Coordinates coordinates = await geoCode.forwardGeocoding(address: "${widget.packageModel.destination}");
final lat = coordinates.latitude!;
final lon = coordinates.longitude!;
setState((){
_latitude = lat;
_longitude = lon;
});
} catch (e) {
print(e);
}
}
这是我试图在Map上显示坐标的地方,但它似乎没有显示Map,它说_latitude还没有初始化:
//Location
Container(
padding: EdgeInsets.only(top: 20),
height: MediaQuery.of(context).size.height / 2.5,
width: MediaQuery.of(context).size.width,
child: GoogleMap(
scrollGesturesEnabled: true,
mapType: MapType.normal,
initialCameraPosition: CameraPosition(
target: LatLng(_latitude, _longitude),
zoom: 14
)
),
),
1条答案
按热度按时间bbmckpt71#
documentation中的示例:
您还有其他问题吗?