我试着去把所有的地址(字符串)到一个列表,然后通过一个让他们一个和填充标记的地图,但我得到这个错误saing那java.util.arraylist不能转换为android.location.address。任何帮助?的java.util.ArrayList不能被转换到android.location.address
这是代码,在定义生成错误
int i = 0;
List<List<Address>> addressList = new ArrayList<List<Address>>();
//while (indirizzi != null) {
while (i <= 3) {
try {
addressList.add(geocoder.getFromLocationName(indirizzi.get(i), 1));
Log.i("indirizzo i-esimo",indirizzi.get(i));
i++;
} catch (IOException e) {
Log.i("geolocation","geolocation IOException");
e.printStackTrace();
}
}
for (int j = 0; j < addressList.size(); j++) {
Address address = (Address) addressList.get(j);
if(address.hasLatitude() && address.hasLongitude()){
latLng = new LatLng(address.getLatitude(), address.getLongitude());
}
markerOptions = new MarkerOptions();
markerOptions.position(latLng);
markerOptions.title(indirizzi.get(i));
markerOptions.icon(BitmapDescriptorFactory.fromResource(R.drawable.icn_albero));
Log.i("for", Integer.toString(i));
j++;
googleMap.addMarker(markerOptions);
}
我已经triend 2方法,你已经证明了我,但后来我不得不施放此addressList.add((地址)geocoder.getFromLocationName(indirizzi.get(I) ,1));它仍然不起作用!并用第一种方法我得到一个索引超出界限的错误! – Pheonix7