Например,
я пропускаю 2 мая и получаю массив [30,1,2,3,4,5,6], который на самом деле есть на этой неделе.
Или я пропускаю 16 мая и получаю массив [14,15,16,17,18,19,20].
Я пытался использовать этот код, но он возвращается через 7 дней, чего я не хочу.
Код: Выделить всё
//get which week of month
Calendar now = Calendar.getInstance();
now.set(mYear, mMonth, Integer.parseInt(extractedDay));
int weekOfMonth = now.get(Calendar.WEEK_OF_MONTH);
//get all days of clicked week
SimpleDateFormat format = new SimpleDateFormat("MM/dd/yyyy");
Calendar calendar = Calendar.getInstance();
calendar.setFirstDayOfWeek(Calendar.MONDAY);
calendar.set(mYear, mMonth, Integer.parseInt(extractedDay));
String[] days = new String[7];
for (int i = 0; i < 7; i++)
{
days[i] = format.format(calendar.getTime());
calendar.add(Calendar.DAY_OF_MONTH, 1);
}
РЕДАКТИРОВАТЬ
Я понял, что у меня есть код, который определяет, какая это неделя месяца. Есть ли способ использовать эти данные и установить дату на понедельник? Например, я передаю 16 мая, а затем обнаруживаю, что сейчас 3-я неделя мая, и устанавливаю для переменной firstDayOfWeek (новая переменная) значение 14 мая.
Подробнее здесь: https://stackoverflow.com/questions/104 ... rrent-week
Мобильная версия