我在下面使用for-loop
。如果代码不在循环内,代码会正确计算,但我想创建一个没有的列表。距离和时间。
KIEL = new LatLng(lat, log);
for(i=0;i<jarray.length;i++){
KIEL = new LatLng(lat, log);
doc = md.getDocument(fromPosition, KIEL,
GMapV2Direction.MODE_DRIVING);
duration = "" + md.getDurationValue(doc);
distance = md.getDistanceText(doc);
HashMap<String, String> map = new HashMap<String, String>();
map.put("distance", distance);
map.put("time", duration );
// // adding HashList to ArrayList
locationlist.add(map);
}
doc
是Document
类的对象,它计算两个位置之间的距离和时间。但是当我在循环中使用此方法时,它将不显示任何数据。如何解决?
答案 0 :(得分:2)
使用Location.distanceTo(位置),它将为您提供两个不同位置之间的距离。
喜欢distance = currentLocation.distanceTo(newLocation);
答案 1 :(得分:0)
从此处下载库并导入您的项目
https://github.com/googlemaps/android-maps-utils
按照此链接为您提供距离
googlemaps.github.io/android-maps-utils/javadoc /
像这样使用,你将获得完美的区域和距离......
SphericalUtil.computeDistanceBetween(LatLng from,LatLng to);