Я новичок в Android и мне нужно отобразить время начала, время окончания и имя в виде списка. Для отображения я использую SimpleAdapter. Проблема в том, что у меня есть две таблицы SQLite:
Время таблицы: Время начала | Время остановки | Студенческий билет
Стол ученика: Студенческий билет | Имя студента
Сейчас я использую Курсор , чтобы получить Starttime, Stoptime и Student ID из моей базы данных
Cursor curm1 = myDb.getAllMonday();
while (curm1.moveToNext()) {
final HashMap<String, String> resultMapMonday = new HashMap<>();
resultMapMonday.put("Start", curm1.getString(3));
resultMapMonday.put("Stop", curm1.getString(4));
resultMapMonday.put("Student", curm1.getString(5));
arrayListStudentsName.add(curm1.getString(5));
listItemsMo.add(resultMapMonday);
}
, а затем SimpleAdapter для его отображения:
final SimpleAdapter adaptersimpleMo = new SimpleAdapter(this, listItemsMo, R.layout.timeslots_configurate,
new String[]{"Start", "Stop", "Student"},
new int[]{R.id.oneTime_start, R.id.oneTime_stop, R.id.selectedStudent});
Но вместо идентификатора я хочу отобразить имена, которые хранятся в другой таблице. Я могу получить совпадающие имена идентификаторов с помощью другого курсора
Cursor curm2 = myDb.getNamesbyIDs(arrayListStudentsName);
while (curm2.moveToNext()) {
final HashMap<String, String> resultMapNames = new HashMap<>();
resultMapNames.put("Name", curm2.getString(1));
}
Но я не знаю, как получить имена в том же адаптере, чтобы отображать имена в том же элементе списка, что и соответствующий старт & остановить время.
РЕДАКТИРОВАТЬ
public Cursor getAllMonday() {
SQLiteDatabase db = this.getWritableDatabase();
Cursor res = db.rawQuery("SELECT * FROM " + TABLE_TIME + " WHERE day = 'Montag' ORDER BY CAST(start as unsigned)", null);
return res;
}