Я пытаюсь отобразить данные из остальных API, содержащих массив Json и список объектов Json. Я попытался следовать учебнику и смог отобразить данные в текстовом представлении. На самом деле я хочу собрать данные в Hashmap с точки зрения пары ключ и значение и отсортировать их соответствующим образом.
public void onResponse(Call<List<Post>> call, Response<List<Post>> response) {
if(!response.isSuccessful()){
textView.setText("Code: " +response.code());
return;
}
int j=0;
List<Post> posts = response.body();
Map<Integer,String> data = new HashMap<Integer, String>();
// Iterating through post and saving data in content variable
for(Post post: posts)
{
String content ="";
//String name = post.getName();
if(!(post.getName()==(null)) && !(post.getName().equals("")))
{
data.put(post.getListid(),post.getName()); //For inserting data into hashmap
content += "ListID: " + post.getListid() + "" + "\n";
content += "Name: " + post.getName() + "" + "\n";
}
textView.append(content);
}
Текущий код сохраняет данные в переменной содержимого и отображает их в тексте. view.
Я относительно новичок в использовании hashmap и модернизации для отображения данных. Я был бы очень признателен, если бы кто-то мог объяснить мне, где я ошибаюсь с моим кодом. Я попытался распечатать данные, но смог распечатать только последнюю строку, а не остальные.
Это мой Json файл, который я хочу отсортировать и отобразить данные
[{"listId":2,"name":null},{"listId":2,"name":"Item 990"},{"listId":2,"name":null},{"listId":2,"name":null},{"listId":2,"name":""},{"listId":4,"name":"Item 771"},{"listId":2,"name":""}]
Это код, который я использую для отображения всех моих json данных в textview
for(Map.Entry entry: data.entrySet())
{ textView.append(entry.getKey()+ " Value:" +entry.getValue() +"\n");}