I am trying to get string values from Db like below:
List<Workout> workouts = AppDatabase.getInstance(getApplicationContext()).getWorkoutDao().getAll();
txtShowWorkout.setText(workouts.get(0).toString());
However, it going to give output like that: I would like to get string value but it is writing pointer values.
com.example.fitnessapp.context.Workout@78db232
com.example.fitnessapp.context.Workout@d2b4056
Also my getAll() function is below:
@Override
public List<Workout> getAll() {
final String _sql = "SELECT * FROM Workout";
final RoomSQLiteQuery _statement = RoomSQLiteQuery.acquire(_sql, 0);
__db.assertNotSuspendingTransaction();
final Cursor _cursor = DBUtil.query(__db, _statement, false, null);
try {
final int _cursorIndexOfİd = CursorUtil.getColumnIndexOrThrow(_cursor, "id");
final int _cursorIndexOfWorkoutName = CursorUtil.getColumnIndexOrThrow(_cursor, "workout_name");
final int _cursorIndexOfFocusArea = CursorUtil.getColumnIndexOrThrow(_cursor, "focus_area");
final int _cursorIndexOfEquipment = CursorUtil.getColumnIndexOrThrow(_cursor, "Equipment");
final int _cursorIndexOfReps = CursorUtil.getColumnIndexOrThrow(_cursor, "reps");
final int _cursorIndexOfDate = CursorUtil.getColumnIndexOrThrow(_cursor, "date");
final List<Workout> _result = new ArrayList<Workout>(_cursor.getCount());
while(_cursor.moveToNext()) {
final Workout _item;
_item = new Workout();
_item.id = (int) _cursor.getInt(_cursorIndexOfİd);
_item.workout_name = _cursor.getString(_cursorIndexOfWorkoutName);
_item.focus_area = _cursor.getString(_cursorIndexOfFocusArea);
_item.Equipment = _cursor.getString(_cursorIndexOfEquipment);
_item.reps = _cursor.getString(_cursorIndexOfReps);
_item.date = _cursor.getString(_cursorIndexOfDate);
_result.add(_item);
}
return _result;
} finally {
_cursor.close();
_statement.release();
}
}