将位置转换为GeoPoint

时间:2012-07-29 17:01:48

标签: android google-maps location overlay

全部 - 我试图获取用户的当前位置,而不是在地图上显示覆盖项目。我的问题是用户的位置作为一个位置进入,覆盖数组只接受GeoPoints。这是我尝试过的:

LocationListener locationListener = new LocationListener() {
        public void onLocationChanged(Location location) {      
            GeoPoint point = new GeoPoint.valueOf(location);
            OverlayItem overlayitem4 = new OverlayItem(point, "You Are Here", "Boulder, CO");               
        }

但我在GeoPoint.valueOf(location);上收到错误,特别是:

  

GeoPoint.valueOf无法解析为类型`

所以我的问题是如何从位置转换为GeoPoint?谢谢大家的时间。

2 个答案:

答案 0 :(得分:9)

试试这个

LocationListener locationListener = new LocationListener() {

     public void onLocationChanged(Location location) {      
         int lat = (int) (location.getLatitude() * 1E6);
         int lng = (int) (location.getLongitude() * 1E6);
         GeoPoint point = new GeoPoint(lat, lng);
         OverlayItem overlayitem4 = new OverlayItem(point, "You Are Here",   "Boulder, CO"); 
     }
}

答案 1 :(得分:2)

这对我有用,看起来更容易:

GeoPoint geoPoint = new GeoPoint(location);