不同的LatLng进口



我在使用LatLng时有一些类型冲突。虽然这个问题并不能阻止应用程序在没有任何问题的情况下运行,但我想优化导入。

我像这样导入LatLng:

import com.google.android.gms.maps.model.LatLng;

我可以像tis:一样成功使用进口LatLng

private LatLng[] places = {new LatLng(xx.xxxx, xx.xxxx)
};

但是,在使用API方向并使用生成的路线后:

List<com.google.maps.model.LatLng> decodedPath = PolylineEncoding.decode(route.overviewPolyline.getEncodedPath());

解码函数属于PolylineEncoding.java,当我检查源代码并搜索LatLng导入时,我遇到了导入:

import com.google.maps.model.LatLng;

这与我最初的进口不同

import com.google.android.gms.maps.model.LatLng;

我的目标是这样使用LatLng:

List<LatLng> decodedPath = PolylineEncoding.decode(route.overviewPolyline.getEncodedPath());

当我这样做时,我会(自然地(得到错误:类型冲突

如何解决此冲突?

提前谢谢。

我不确定这是否是你所需要的,你可以写一个静态方法来转换类型:

static List<com.google.maps.model.LatLng> convertCoordType(List<com.google.android.gms.maps.model.LatLng> list) {
List<com.google.maps.model.LatLng> resultList = new ArrayList<>();
for (com.google.android.gms.maps.model.LatLng item : list) {
resultList.add(new com.google.maps.model.LatLng(item.latitude, item.longitude));
}
return resultList;
}

然后调用convertCoordType绕过decode:

List<LatLng> decodedPath = convertCoordType(PolylineEncoding.decode(route.overviewPolyline.getEncodedPath()));

相关内容

  • 没有找到相关文章

最新更新