Сравнивая даты в цикле, затем добавляя интервал?
Я действительно застрял на этом некоторое время. Пользователь установит пользовательский интервал будильника, а затем выберет дату на сборщике, и приложение настроено на отображение следующего будильника. Если они установили его в прошлом, я хочу, чтобы приложение добавляло интервал, повторяя его, пока он не появится в будущем.
Я играл с датами сравнения, но я не могу заставить что-то работать. Как бы вы, ребята, сделали это? Спасибо!
1 ответ
Вы можете добавить это расширение, чтобы проверить, предшествует ли его дате заданная дата:
extension NSDate
{
func isGreaterThanDate(dateToCompare : NSDate) -> Bool
{
//Declare Variables
var isGreater = false
//Compare Values
if self.compare(dateToCompare) == NSComparisonResult.OrderedDescending
{
isGreater = true
}
//Return Result
return isGreater
}
func isLessThanDate(dateToCompare : NSDate) -> Bool
{
//Declare Variables
var isLess = false
//Compare Values
if self.compare(dateToCompare) == NSComparisonResult.OrderedAscending
{
isLess = true
}
//Return Result
return isLess
}
}
И чтобы использовать это, просто сделайте что-то вроде
let today = NSDate()//this creates a date object with current date
let isBeforeToday = today.isGreaterThanDate(aDate)//aDate is whatever date they pick from the picker
А затем добавить свой интервал вы можете сделать
today.dateByAddingTimeInterval(customInterval)//customInterval is in seconds
Я не уверен, что точно знаю, что вы хотите сделать, но это должно по крайней мере помочь вам начать со сравнения дат и добавления интервалов к ним