Я работаю над Android-приложением, где мне нужно отображать дни недели из календаря. Могу ли я это сделать с помощью API календаря? или есть библиотека, которую я могу использовать? Дни недели на Android
ответ
Для обработки даты в Android я рекомендую 310ABP, порт API-интерфейсов новой версии Java 8 для Android.
Используйте объект Calendar, чтобы все было сделано.
Вы можете использовать библиотеку JodaTime для отображения текущего дня недели.
LocalDate newDate = new LocalDate();
int dayOfWeek = newDate.getDayOfWeek();
или есть библиотека, которая может использовать?
Да. Используйте обратный порт классов java.time. См. Пункт «Android» ниже.
Использование java.timeLocalDate
LocalDate
класс представляет собой дату только значение без времени суток и без временной зоны.
Часовой пояс имеет решающее значение для определения даты. В любой данный момент дата изменяется по всему миру по зонам. Например, через несколько минут после полуночи в Paris France - это новый день, пока еще «вчера» в Montréal Québec.
Указать proper time zone name в формате continent/region
, такие как America/Montreal
, Africa/Casablanca
или Pacific/Auckland
. Никогда не используйте аббревиатуру 3-4 буквы, такую как EST
или IST
, так как они не настоящие часовые пояса, не стандартизированные, и даже не уникальные (!).
ZoneId z = ZoneId.of("America/Montreal");
LocalDate today = LocalDate.now(z);
TemporalAdjuster
Чтобы получить первый день недели, (а) решить, что это первый день недели для вас, (б) использовать TemporalAdjuster
реализации, определенную в TemporalAdjusters
, чтобы получить дату для конкретного объекта перечисления [] [6].
LocalDate ld = today.with(TemporalAdjusters.previousOrSame(DayOfWeek.MONDAY)) ;
Чтобы получить недельные даты, добавьте день за раз.
LocalDate localDate = ld ; // Initialize our looping variable.
List<LocalDate> dates = new ArrayList<>(7) ;
for(int i = 0 , i < 7 , i ++) { // Loop seven times, to cover a week.
localDate = localDate.plusDays(i);
dates.add(localDate) ;
}
О java.time
java.time каркас встроен в Java 8 и более поздних версий. Эти классы вытесняют неприятные старые legacy классы времени, такие как java.util.Date
, Calendar
, & SimpleDateFormat
.
Проект Joda-Time, в настоящее время в maintenance mode, советует перейти на классы java.time.
Чтобы узнать больше, см. Oracle Tutorial. И поиск Stack Overflow для многих примеров и объяснений. Спецификация: JSR 310.
Где получить классы java.time?
- Java SE 8, Java SE 9, а затем
- Встроенный.
- Часть стандартного Java API с объединенной реализацией.
- Java 9 добавляет некоторые незначительные функции и исправления.
- Java SE 6 и Java SE 7
- Большая часть функциональности java.time будет обратно портирован на Java 6 & 7 в ThreeTen-Backport.
- Android
- ThreeTenABP Проект адаптирует ThreeTen-Backport (как упоминалось выше) для Android специально.
- См. How to use ThreeTenABP….
- 1. Локализованные дни недели на android
- 2. Android погрузо календарь дни недели
- 3. Дни недели
- 4. Tablesorter - дни недели
- 5. Получите короткие дни недели в android
- 6. android как определить те же дни недели
- 7. Как добавить дни недели?
- 8. Дни недели Java-программа
- 9. Объединить дни сортировки недели
- 10. Предыдущие дни недели
- 11. Петля в дни недели
- 12. Получить дни недели getter
- 13. UIDatePicker, показывающий дни недели, дни и месяцы
- 14. Получайте дни недели по номеру недели
- 15. Разделить конкретный месяц на недели и дни
- 16. strtotime дни недели не отображаются на французском
- 17. Дни недели как атрибуты XML?
- 18. PHP: Как получить дни недели?
- 19. Получить дни недели в Postgresql
- 20. Как пройти через дни недели
- 21. Получите все дни текущей недели?
- 22. самозагрузки сборщик реверс дни недели
- 23. как отображать текущие дни недели
- 24. Печать Дни недели в Java
- 25. Как реализовать поисковые дни недели
- 26. Наиболее распространенные дни недели запроса
- 27. React-Datepicker коррупцией - дни недели
- 28. XDSoft DateTimePicker неправильные дни недели
- 29. Php - недели/дни с дней
- 30. Показывать дни недели, используя ifelse
Отображать дни недели, такие как? Получение даты и отображение дня недели? –
См. Аналогичный вопрос, [Samsung J7 возвращается в первый день недели как 2] (http://stackoverflow.com/q/40041147/642706). –
Это похоже на дубликат: [(Android) Получить первый день недели] (http://stackoverflow.com/q/25091904/642706) –