Edit:Невозможно отобразить координаты широты и долготы posistions
Добавили соответствующие классы, чтобы иметь возможность доступа к каждому элементу слой массива JSON.
В настоящее время (по-прежнему) пытается получить доступ к местоположению. Я вызываю новый объект класса datawrapper, я вижу, как должна выполняться реализация кода для доступа к местоположению, но на данный момент я получаю ошибку из:
The method getGeometry() is undefined for the type List.
Я получаю Eclipse, автозаполнение объект местоположения, показывая 'getLongitude()' и 'getLatitude() методы, но они должны быть 'getLat()' и 'getLng()' методы.
Я вижу, как доступ к объектам в порядке, позволяет мне получить длинный и лат, но все же ошибка выше меня бросила.
Вот мои serpate классы JSON, как они стоят:
Datawrapper:
package com.example.restfulweb;
import java.util.List;
import com.google.gson.Gson;
public class DataWrapper<GeoResult> {
List<GeoName> results;
public List<GeoName> getResults() {
return results;
}
public void setResults(List<GeoName> results) {
this.results = results;
}
@SuppressWarnings("rawtypes")
public DataWrapper fromJson(String jsonString)
{
return new Gson().fromJson(jsonString, DataWrapper.class);
}
}
GeoName класс:
package com.example.restfulweb;
public class GeoName {
private String id;
private Geometry geometry;
private String name;
public String getId() {
return id;
}
public void setId(String id) {
this.id = id;
}
public Geometry getGeometry() {
return geometry;
}
public void setGeometry(Geometry geometry) {
this.geometry = geometry;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Геометрия Класс:
package com.example.restfulweb;
public class Geometry {
private Location location;
public Location getLocation() {
return location;
}
public void setLocation(Location location) {
this.location = location;
}
}
Расположение Класс:
пакет com.example.restfulweb;
public class Location {
private Double lat;
private Double lng;
public Double getLat() {
return lat;
}
public void setLat(Double lat) {
this.lat = lat;
}
public Double getLng() {
return lng;
}
public void setLng(Double lng) {
this.lng = lng;
}
}}
Как показано все методы получения и установки соответствия. Как список возвращаемых объектов Im не уверен, почему эта ошибка возникает?
Как код стоит открыть слои:
@SuppressWarnings("rawtypes")
DataWrapper dataWrapper = new DataWrapper();
Location location = dataWrapper.getResults().getGeometry().getLocation();
0 Вы можете добавить код, который загружает объекты GeoName из JSON? – ianhanniballake
@ianhanniballake Я добавил методы, используемые для возврата объекта результатов JSON, используемого для сопоставления. – user1352057