我想在Android地图上点击的标记上显示地址。我使用GeoCoder获取地址,但OnMapLongClick函数没有lat,long参数。它的参数是(LatLng latlng)。我的代码如下;
@Override
public void onMapLongClick(LatLng latLng) {
Geocoder geoCoder = new Geocoder(
getBaseContext(), Locale.getDefault());
try {
List<Address> addresses = geoCoder.getFromLocation(lat, lng, 1);
if (addresses.size() > 0) {
for (int index = 0;
index < addresses.get(0).getMaxAddressLineIndex(); index++)
filterAddress += addresses.get(0).getAddressLine(index) + " ";
}
}catch (IOException ex) {
ex.printStackTrace();
}catch (Exception e2) {
// TODO: handle exception
e2.printStackTrace();
}
googleMap.addMarker(new MarkerOptions().position(latLng).title(filterAddress)).showInfoWindow();
markerClicked = false;
}
我如何解析或如何将latlng对象转换为lat,lng参数?
答案 0 :(得分:2)
尝试从Latitude
Longitude
和LatLng
@Override
public void onMapLongClick(LatLng latLng) {
Double lat=latLng.latitude;
Double longi=latLng.longitude;
.........
..........
//do your job
}
答案 1 :(得分:1)
使用小型Google搜索,LatLng
类
使用公开字段latitude
和longitude
来阅读这两个值。
List<Address> addresses = geoCoder.getFromLocation(latLng.latitude, latLng.longitude, 1);
答案 2 :(得分:1)
您可以使用latlng.latitude
和latlng.longitude
来获取lat和lng参数。