首页 > 解决方案 > 查找当前位置与输入的经纬度之间的距离

问题描述

我是 Flutter 编程的新手,并且尝试了一个小项目。我从用户那里获取纬度和经度,并查找当前位置与给定纬度和经度之间的距离

import 'package:flutter/material.dart';
import 'package:geolocator/geolocator.dart';



void main() {
 runApp(Myapp());
} 

class Myapp extends StatefulWidget {

  @override

  _MyappState createState() => _MyappState();
}

class _MyappState extends State<Myapp> {
  double a,b;
  double distanceInMeters;

  String result;
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(title: Text('location'),),
        body: Container(
        color: Colors.teal,
        width: double.infinity,
        child:Column(

          children:<Widget>[
            TextField(
              keyboardType: TextInputType.number,
              decoration:InputDecoration(icon: Icon(Icons.add_location)),
              onSubmitted:(lat1) {
                print(lat1);
                a=lat1 as double ;
              } ,
            ),
            TextField(
              keyboardType: TextInputType.number,
              decoration:InputDecoration(icon: Icon(Icons.add_location)),
              onSubmitted:(long1) {
                print(long1);
                b=long1 as double ;
              },
             ),
            FlatButton(
            color: Colors.orange,
            onPressed: () async {
             final position=await Geolocator().getCurrentPosition(desiredAccuracy: 
              LocationAccuracy.high);

              distanceInMeters = await 
              Geolocator().distanceBetween(position.latitude,position.longitude,a,b);
              print(distanceInMeters);

            },
            child: Text(
              "Flat Button",
            ),
          ),
            Text('$distanceInMeters')



        ],
        ),



      ),

     ),
    );
  }
}

在此处输入图像描述

但是应用程序中的输出始终为空,是否与输入的纬度和经度中的点后没有小数有关?我应该怎么做才能改进我的代码,你们能找到错误并建议我吗?

标签: flutterdartgeolocation

解决方案


推荐阅读