#java #android #json #android-volley
#java #Android #json #android-volley
Вопрос:
Мой ответ JSON имеет следующую структуру. Как я должен проанализировать его, чтобы сохранить в списке на Java с сохраненной структурой. Предоставляет ли GSON решение или я должен использовать список многомерных массивов?
Мне нужно передать каждый из массива тегов на другой пейджер просмотра, какому подходу я должен следовать.
{
"tag": [
{
"listing_count": 5,
"listings": [
{
"source": "source1",
"data": {
"image": "image1",
"name": "name1"
},
"name": "name1"
}
]
},
{
"listing_count": 5,
"listings": [
{
"source": "source2",
"data": {
"image": "imag2",
"name": "name2"
},
"name": "name2"
}
]
}
]
}
Редактировать:
Я создал классы, как предложено в ответе..У меня возникли проблемы с созданием класса ответов GSON. Это то, что я создал:
public GsonRequest(int method, String url, Class<T> clazz,
Listener<T> listener, ErrorListener errorListener, Gson gson) {
super(Method.GET, url, errorListener);
this.mClazz = clazz;
this.mListener = listener;
mGson = gson;
}
Комментарии:
1. При использовании Gson пользователь может сохранять данные до тех пор, пока приложение не завершит работу, когда приложение завершит потерю данных. Один из вариантов должен сохранять данные в общих настройках в виде строки json. когда вам понадобятся данные, вы проанализируете их и отобразите. В противном случае вам придется использовать базу данных.
2. Спасибо за краткую информацию.. как я могу создать класс для GSON, который будет действовать для вышеупомянутой структуры?
Ответ №1:
Класс gson должен быть примерно таким:
public class TagList {
ArrayList<Tag> tags;
public static class Tag {
int listing_count;
ArrayList<Listings> listings;
public int getListing_count() {
return listing_count;
}
public void setListing_count(int listing_count) {
this.listing_count = listing_count;
}
public ArrayList<Listings> getListings() {
return listings;
}
public void setListings(ArrayList<Listings> listings) {
this.listings = listings;
}
}
public static class Listings {
String source;
Data data;
String name;
public String getSource() {
return source;
}
public void setSource(String source) {
this.source = source;
}
public Data getData() {
return data;
}
public void setData(Data data) {
this.data = data;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
public static class Data {
String image;
String name;
public String getImage() {
return image;
}
public void setImage(String image) {
this.image = image;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
Комментарии:
1. Привет, я застрял при создании класса ответов GSON. Нужно ли мне создавать разные ответы GSON для каждого списка (тега и списков)?