SQLite, Preferences, файлы, SD, Content Provider, XML, JSON
-
Максим Янчий
- Сообщения: 77
- Зарегистрирован: 21 июл 2013, 17:33
Сообщение
Максим Янчий » 16 авг 2013, 10:22
Ребят, подскажите как узнать текущий день недели. Программе в зависимости от этого нужно сделать определенное действие, потому что у меня он вроде бы получает день недели, но когда я делаю Выбор(switch) он выбирает только значение 4(четверг), и его не волнует, что сейчас может быть вообще понедельник.
Calendar.getInstance();
Код: Выделить всё
Calendar c = Calendar.getInstance();
c.set(year, month, day);
int dow = c.get(Calendar.DAY_OF_WEEK);
switch(dow){
case 4:
///
break;
case 5:
///
break;
}
Очень хочу знать в чем проблема. Заранее благодарен!
-
Mikhail_dev
- Сообщения: 2386
- Зарегистрирован: 09 янв 2012, 14:45
- Откуда: Самара
Сообщение
Mikhail_dev » 16 авг 2013, 11:13
В
документации написано что предыдущие значения сохраняются. Если это не требуется, то стоит вызвать перед изменением значения, метод clear.
Лично я меняю через метод setTimeInMillis значение.
И еще, из адского треша, в Calendar месяца идут с 0 значения, т.е. другими словами, декабрь = 11.
-
Максим Янчий
- Сообщения: 77
- Зарегистрирован: 21 июл 2013, 17:33
Сообщение
Максим Янчий » 17 авг 2013, 09:28
Прошу прощения, но метод clear() нужно вызвать перед строкой c.set(year, month, day) или перед int dow = c.get(Calendar.DAY_OF_WEEK)? теперь он у меня зациклился на пятнице, а у уж думал, что проблема ушла(
Код: Выделить всё
Calendar c = Calendar.getInstance();
c.clear();
c.set(year, month, day);
int dow = c.get(Calendar.DAY_OF_WEEK);
switch(dow){
case 6:
..
break;
case 5:
..
break;