Я хочу, чтобы фон моего кода uiviewcontroller менялся в зависимости от часа. Если код находится в первые 60 минут дня, цвет фона работает. Однако, когда время переходит на второй час, цвет изображения не меняется с серого на розовый. Я хочу, чтобы при смене часа цвет фона изменился. Просто беспокойтесь о первых 2 часах дня, как указано ниже. Код в военное время. Fun c вызывается из viewdappear.
import UIKit
class ViewController: UIViewController {
var timer = Timer()
var currentDateTime = Date()
lazy var dateFormatter: DateFormatter = {
let formatter = DateFormatter()
formatter.dateFormat = "hh:mm" // or "hh:mm a" if you need to have am or pm symbols
return formatter
}()
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(true)
dateFormatter.timeStyle = .medium
halsey()
}
var count = 0
fileprivate func halsey() {
let minutesNow = getMinutesFromDate(date: Date())
if minutesNow >= 0 && minutesNow < 60 {
//12
if count == 0{
box.backgroundColor = .gray
count += 1
}
}
if minutesNow >= 60 && minutesNow < 120 {
//1
if count == 1 {
view.backgroundColor = .systemPink
count += 1
}
}
}
@objc func tick() {
}
func getMinutesFromDate(date: Date) -> Int {
let dateComponents = Calendar.current.dateComponents([.hour, .minute], from: date)
let minutes = ((dateComponents.hour ?? 0) * 60) + (dateComponents.minute ?? 0)
return minutes
}
}