在Android中使用地图

在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

我用字符串表示某个位置的地址。但是我想把这个地址转换成经度和纬度。因此,我使用下面给出的代码转换为geopoint。但是这个地质点并没有被添加到地图上。地图始终显示整个世界的默认地图

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));
使用此代码,地图将转到地址的位置。但是,如果需要标记,则需要创建标记并将其添加到地图中

有关标记的详细信息: