在android中点击谷歌地图上的标记显示地址?
我已经在我的应用程序中添加了谷歌地图。我正在谷歌地图上显示当前位置。我现在在标记上显示一个红色标记。我想在弹出窗口中显示标记上方的地址,就像我们通常在应用程序中看到的那样。我尝试了一些方法,但没有一种对我有效。在此处共享代码 1.我第一次尝试在android中点击谷歌地图上的标记显示地址?,android,google-maps,google-maps-api-3,Android,Google Maps,Google Maps Api 3,我已经在我的应用程序中添加了谷歌地图。我正在谷歌地图上显示当前位置。我现在在标记上显示一个红色标记。我想在弹出窗口中显示标记上方的地址,就像我们通常在应用程序中看到的那样。我尝试了一些方法,但没有一种对我有效。在此处共享代码 1.我第一次尝试 @Override public void onLocationChanged(Location location) { mMap.clear(); latitude = location.getLatitud
@Override
public void onLocationChanged(Location location) {
mMap.clear();
latitude = location.getLatitude();
longitude = location.getLongitude();
MarkerOptions mo=new MarkerOptions();
LatLng latLng = new LatLng(latitude, longitude);
marker=mMap.addMarker(mo.position(latLng));
mMap.moveCamera(CameraUpdateFactory.newLatLng(latLng));
mMap.animateCamera(CameraUpdateFactory.zoomTo(15));
mo.title("Current Location");
}
2.我第二次尝试
mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker arg0) {
String title = "Any Thing You want";
marker.setTitle(title);
return true;
}
});
请告诉我哪里弄错了。谢谢你可能想检查一下
地理编码是将地址(如加利福尼亚州山景城1600圆形剧场公园路)转换为地理坐标(如纬度37.423021和经度-122.083739)的过程,您可以使用这些坐标在地图上放置标记或定位地图
-术语地理编码通常指将人类可读地址转换为地图上的位置。相反,将地图上的位置转换为人类可读地址的过程称为反向地理编码
试一试
这个需要一个服务器密钥
也检查一下这个
希望这有帮助 您可能需要检查
地理编码是将地址(如加利福尼亚州山景城1600圆形剧场公园路)转换为地理坐标(如纬度37.423021和经度-122.083739)的过程,您可以使用这些坐标在地图上放置标记或定位地图
-术语地理编码通常指将人类可读地址转换为地图上的位置。相反,将地图上的位置转换为人类可读地址的过程称为反向地理编码
试一试
这个需要一个服务器密钥
也检查一下这个
希望这有帮助 使用地理编码器
mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
Geocoder geocoder = new Geocoder(this,Locale.getDefault());
addresses = geocoder.getFromLocation(marker.getPosition().latitude(), marker.getPosition().longitude(), 1); //1 num of possible location returned
String address = addresses.get(0).getAddressLine(0); //0 to obtain first possible address
String city = addresses.get(0).getLocality();
String state = addresses.get(0).getAdminArea();
String country = addresses.get(0).getCountryName();
String postalCode = addresses.get(0).getPostalCode();
//create your custom title
String title = address +"-"+city+"-"+state;
marker.setTitle(title);
marker.showInfoWindow();
return true;
}
});
使用地理编码器
mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() {
@Override
public boolean onMarkerClick(Marker marker) {
Geocoder geocoder = new Geocoder(this,Locale.getDefault());
addresses = geocoder.getFromLocation(marker.getPosition().latitude(), marker.getPosition().longitude(), 1); //1 num of possible location returned
String address = addresses.get(0).getAddressLine(0); //0 to obtain first possible address
String city = addresses.get(0).getLocality();
String state = addresses.get(0).getAdminArea();
String country = addresses.get(0).getCountryName();
String postalCode = addresses.get(0).getPostalCode();
//create your custom title
String title = address +"-"+city+"-"+state;
marker.setTitle(title);
marker.showInfoWindow();
return true;
}
});
这很简单
只需添加一个标题
mMap.addMarker(new MarkerOptions().position(
new LatLng(12.9969284, 80.25792380000007)).title("A2B Car Parking").icon(
BitmapDescriptorFactory.fromBitmap(BitmapFactory
.decodeResource(getResources(),
R.drawable.red_icon))).anchor(0.5f, 1f));
希望这能奏效 非常简单
只需添加一个标题
mMap.addMarker(new MarkerOptions().position(
new LatLng(12.9969284, 80.25792380000007)).title("A2B Car Parking").icon(
BitmapDescriptorFactory.fromBitmap(BitmapFactory
.decodeResource(getResources(),
R.drawable.red_icon))).anchor(0.5f, 1f));
希望这能奏效 你的问题是什么?当你尝试这些方法时会发生什么?你的问题是什么?尝试这些方法时会发生什么?