Android Сортировка данных в массивы – ArrayAdapter JSON Listview

У меня есть таблица MySQL, называемая продуктом, который содержит информацию о диете. В настоящее время я запускаю php-скрипт, который вызывает следующую команду sql. Выберите * из Food, где dietid = 1, который возвращает изображение ниже.

введите описание изображения здесь

День колокола – это день диеты, так что день 1, день 2 и т. Д. Время относится к точке в течение дня, так что время 1 – время завтрака 2 – время закуски 3 – время обеда 4 – послеобеденная пересылка и время 5 – ужин ,

Я хотел бы отображать данные следующим образом в списке для каждого дня диеты. Описание – это сделанное из измерения количества и элемента

введите описание изображения здесь

На данный момент в лог-коте есть следующий вывод.

ОБНОВЛЕНИЕ – ИЗМЕНИТЬ НОВЫЙ ЛОККАТ

Используя подход Jims, я смог группировать эти данные по дням и времени в формате, который мне нужен, но теперь я столкнулся с проблемой, с которой я столкнулся раньше, список раздувается и помещает информацию в каждую строку, когда мне это нужно все должно быть в 1 строке за 1 день.

введите описание изображения здесь

Проблема в том, что теперь он раздувает такие виды, которые создают одно представление и помещают его для каждого элемента.

ОБНОВЛЕНО ARRAYADAPTER #

введите описание изображения здесь

введите описание изображения здесь

Я хотел бы сгруппировать эти данные в массивы на каждый день, так что это будет день 1 – завтрак – пункт, закуска – элемент и т. Д., Чтобы я мог разместить все в одном списке для просмотра пользователем.

Все мои данные хранятся в двух классах моделей. Ниже представлен мой адаптер с классами моделей.

Спасибо 🙂 получить там ..

Класс ArrayAdapter ОБНОВЛЕНО

public class DietAdapterNew extends ArrayAdapter<FoodInfoModel>{ private List<FoodInfoModel> items; private TextView diet_day, breakfast_data, snach1_data, lunch_data, snack2_data, dinner_data ; private LinearLayout ratingCntr; private TextView followersText; public DietAdapterNew(Context context, List<FoodInfoModel> items) { super(context, R.layout.list_diet_single_day); this.items = items; } public int getCount() { return items.size(); } @SuppressWarnings("unchecked") public View getView(int position, View convertView, ViewGroup parent) { View v = convertView; if(v == null) { LayoutInflater li = LayoutInflater.from(getContext()); v = li.inflate(R.layout.list_diet_single_day, null); } FoodInfoModel infomodel = items.get(position); if(infomodel != null) { diet_day = (TextView)v.findViewById(R.id.diet_day); breakfast_data = (TextView)v.findViewById(R.id.breakfast_data); snach1_data = (TextView)v.findViewById(R.id.snack1_data); lunch_data = (TextView)v.findViewById(R.id.lunch_data); snack2_data = (TextView)v.findViewById(R.id.snack2_data); dinner_data = (TextView)v.findViewById(R.id.dinner_data); List<DayFoodModel> daylist = new ArrayList<DayFoodModel>(); DayFoodModel dayfoodmodel = new DayFoodModel(); dayfoodmodel.setDay(infomodel.getDay()); dayfoodmodel.setTime(infomodel.getTime()); dayfoodmodel.setFoodData(infomodel.getItem() + infomodel.getMeasure()); diet_day.setText("Current day " ); Collections.sort(daylist, new DayComparator()); daylist.add(dayfoodmodel); Log.v("Logging", "Info" + daylist); // }; if (dayfoodmodel.getTime() == 1 ) { if( breakfast_data != null) breakfast_data.setText(dayfoodmodel.getFoodData()); } if (dayfoodmodel.getTime() == 2) { if( snach1_data != null) snach1_data.setText(dayfoodmodel.getFoodData()); } if (dayfoodmodel.getTime() == 3) { if( lunch_data != null) lunch_data.setText(dayfoodmodel.getFoodData()); } if (dayfoodmodel.getTime() == 4) { if( snack2_data != null) snack2_data.setText(dayfoodmodel.getFoodData()); } if (dayfoodmodel.getTime() == 5) { if( dinner_data != null) dinner_data.setText(dayfoodmodel.getFoodData()); } // } // } return v; } } 

DayFoodModel.java

 public class DayFoodModel { int _day; int _qty; int _time; String _item; String _measure; String _food_data; public DayFoodModel() { } public DayFoodModel(int day, int qty, int time, String item, String measure, String food_data){ this._day = day; this._qty = qty; this._item = item; this._time = time; this._measure = measure; this._food_data = food_data; } public DayFoodModel(String item, String measure, String food_data) { this._item = item; this._measure = measure; this._food_data = food_data; } public int getDay(){ return this._day; } public void setDay(int day){ this._day = day; } public int getQty(){ return this._qty; } public void setQty(int qty){ this._qty = qty; } public int getTime(){ return this._time; } public void setTime(int time){ this._time = time; } public String getItem(){ return this._item; } public void setItem(String item){ this._item = item; } public String getMeasure(){ return this._measure; } public void setMeasure(String measure){ this._measure = measure; } public String getFoodData(){ return this._food_data; } public void setFoodData(String food_data){ this._food_data = food_data; } } 

FoodInfoModel

 public class FoodInfoModel { int _dietid; int _id; int _day; int _qty; int _time; String _item; String _measure; public String breakfast_data_string; public FoodInfoModel() { } public FoodInfoModel(int dietid, int id, int day, int qty, int time, String item, String measure){ this._id = id; this._dietid = dietid; this._day = day; this._qty = qty; this._item = item; this._measure = measure; this.breakfast_data_string = measure + item; } public FoodInfoModel(String item, String measure, String breakfast_data_string) { this._item = item; this._measure = measure; this.breakfast_data_string = measure + item; } public int getID(){ return this._id; } public void setID(int id){ this._id = id; } public int getDietID(){ return this._dietid; } public void setDietID(int dietid){ this._dietid = dietid; } public int getDay(){ return this._day; } public void setDay(int day){ this._day = day; } public int getQty(){ return this._qty; } public void setQty(int qty){ this._qty = qty; } public int getTime(){ return this._time; } public void setTime(int time){ this._time = time; } public String getItem(){ return this._item; } public void setItem(String item){ this._item = item; } public String getMeasure(){ return this._measure; } public void setMeasure(String measure){ this._measure = measure; } public String getBreakfastData(){ return this.breakfast_data_string; } public void setBreakfastData(String breakfast_data_string){ this.breakfast_data_string = breakfast_data_string; } }