在Android中使用地图
我用字符串表示某个位置的地址。但是我想把这个地址转换成经度和纬度。因此,我使用下面给出的代码转换为geopoint。但是这个地质点并没有被添加到地图上。地图始终显示整个世界的默认地图在Android中使用地图,android,google-maps,google-maps-markers,Android,Google Maps,Google Maps Markers,我用字符串表示某个位置的地址。但是我想把这个地址转换成经度和纬度。因此,我使用下面给出的代码转换为geopoint。但是这个地质点并没有被添加到地图上。地图始终显示整个世界的默认地图 public GeoPoint getLocationFromAddress(String strAddress) { Geocoder coder = new Geocoder(this); List<Address> address; GeoPoin
public GeoPoint getLocationFromAddress(String strAddress) {
Geocoder coder = new Geocoder(this);
List<Address> address;
GeoPoint p1 = null;
try {
address = coder.getFromLocationName(strAddress, 5);
if (address == null) {
return null;
}
Address location = address.get(0);
location.getLatitude();
location.getLongitude();
p1 = new GeoPoint((int) (location.getLatitude() * 1E6),
(int) (location.getLongitude() * 1E6));
return p1;
} catch (IOException e) {
e.printStackTrace();
return p1;
}
}
公共地质点getLocationFromAddress(字符串){
地理编码器=新地理编码器(本);
名单地址;
地球点p1=零;
试一试{
地址=编码者。getFromLocationName(StradAddress,5);
如果(地址==null){
返回null;
}
地址位置=地址。获取(0);
location.getLatitude();
location.getLongitude();
p1=新的地质点((int)(location.getLatitude()*1E6),
(int)(location.getLongitude()*1E6));
返回p1;
}捕获(IOE异常){
e、 printStackTrace();
返回p1;
}
}
我是地图新手,不知道我做错了什么。有什么建议吗?既然你知道了纬度和经度,你忘了把地图更新到具体的位置。您可以这样做:
int zoomNiveau = 15;
map.moveCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(location.getLatitude(), location.getLongitude()), zoomNiveau));
使用此代码,地图将转到地址的位置。但是,如果需要标记,则需要创建标记并将其添加到地图中
有关标记的详细信息: