您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

Flutter-从rest api遍历经纬度列表以获取两个坐标之间的距离

Flutter-从rest api遍历经纬度列表以获取两个坐标之间的距离

我在您的代码中看到了多个错误

首先,您的代码未编译

其次,将全局状态与异步调用一起使用。如果仅将参数传递给getDistance方法,那会更好。像这样:

Future<double> getDistance(double lat, double long) async {
  final distanceInMeters = await Geolocator().distanceBetween(
        currentLocation.latitude,
        currentLocation.longitude,
        lat,
        lng
  );

  return distanceInMeters / 1000;
}

最后,您应该使用FutureBuilder调用getDistance

ListView.separated(
  itemCount: content.length,
  separatorBuilder: (context, position) {
   // return a separator widget;
  },
  itemBuilder: (context, position) {
    final current = content[position];
    return FutureBuilder<String>(
      future: getDistance(current.lat, current.long)
                   .then((value) => value.toString()),
      builder: (context, snapshot) {
        return Container(
          child: Column(
            children: <Widget>[new Text(snapshot.data)],
          ),
        );
     });
});
其他 2022/1/1 18:17:16 有600人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶