Всем привет! Я начинающий Swift разработчик. В моем последнем проекте мне потребовалось изменять отображенное расписание в соответсвии с днем недели и временем. Как обычно, я начал искать информацию по этому поводу в интернете на англоязычных сайтах для разработчиков, но ничего стоящего не нашел, потому что все гайды были написаны для предыдущих версий языка Swift.
Понятное дело, что полноценные Swift-программисты уже знают все это, поэтому напомню, что данный Гайд не для вас, а для таких же новичков, как и я.
Работа со временем в Swift, на самом деле, оказалась очень простой. Инициализируется все с помощью пары строчек кода:
let date = Date()
let calendar = Calendar.current
Теперь мы просто можем брать из этих двух переменных данные о времени, дне недели и так далее.
Например, для того, чтобы узнать текущий день недели, нам нужно написать это:
let weekday = calendar.component(.weekday, from: date)
С помощью этой строки мы получаем номер дня недели, начинающейся с воскресенья (то есть понедельник — второй день недели, его номер 2). Теперь с этим номером мы можем делать что угодно, например:
if weekday == 2 {
print("Сегодня понедельник")
}
Тем же самым образом мы можем получить текущий час, минуту и секунду. Для этого просто надо заменить .weekday на другой компонент. Для часа это .hour, для минуты — .minute и так далее.
Ниже я покажу пример кода, который выводит в консоль текущее время:
let date = Date()
let calendar = Calendar.current
let hour = calendar.component(.hour, from: date)
let minute = calendar.component(.minute, from: date)
let second = calendar.component(.second, from: date)
print("Текущее время: (hour):(minute):(second)")
С помощью этого можно получить большое количество информации, полный список можно посмотреть тут.
Вот такой короткий гайд получился, надеюсь помог начинающим разработчикам. Пишите в комментариях, о каких еще базовых модулях рассказать. Надеюсь вам понравилось. Спасибо за внимание!
Автор: Наташа