2014-12-03 2 views
8

Я использую API Карт Google v2, и я получаю координаты местоположения одиночной String "-34.8799074,174.7565664" из моих SharedPreferences, которые мне нужно преобразовать в LatLng.Преобразование String в LatLng

Может ли кто-нибудь помочь в этом, пожалуйста?

Thx!

+0

Ans: см https: // StackOverflow. com/a/26891191/4425004 – Vijayaraghavan

+0

Возможный дубликат [Конвертировать длинную строку long в Google Maps API LatLng Object] (https://stackoverflow.com/questions/26890514/convert-lat-long-string-into-google-maps- api-latlng-object) – Vijayaraghavan

ответ

25

[Google Maps Android API]

Вы можете разделить строку через запятую, а затем разобрать строку длинной

String[] latlong = "-34.8799074,174.7565664".split(","); 
double latitude = Double.parseDouble(latlong[0]); 
double longitude = Double.parseDouble(latlong[1]); 

Для конструирует LatLng с заданной широты и долготы

LatLng location = new LatLng(latitude, longitude); 

[API JavaScript для Google Maps]

Для ту же операцию с сервисом Maps JavaScript API (JSFiddle demo) -

var latlong = '-34.397,150.644'.split(','); 
    var latitude = parseFloat(latlong[0]); 
    var longitude = parseFloat(latlong[1]); 
    var mapOptions = { 
    zoom: 8, 
    center: {lat: latitude, lng: longitude} 
    }; 
+0

, в отличие от другого ответа, это не объясняет, что LatLng является классом – Muz

+0

@Muz Я обновил ответ с более подробной информацией и примерами использования. –

9

Во-первых вы хотите разбить строку на запятую:

String[] latLng = "-34.8799074,174.7565664".split(","); 

Это будет дать вам два String переменные, которые вы хотите разобрать как удваиваете, так как конструктор LatLng принимает два удвоения для широты и долготы местоположения:

double latitude = Double.parseDouble(latLng[0]); 
double longitude = Double.parseDouble(latLng[1]); 

Наконец, добавив к предыдущему ответу, вы тогда хотите поместить их в LatLng объект, который класс часто используется Google Maps:

LatLng location = new LatLng(latitude, longitude); 
Смежные вопросы