У меня есть функция для работы в начале и конце недели, которая работает так, как ожидалось. Я хочу реализовать еще одну функцию, которая работает в начале и в конце одного дня. У меня есть код ниже, однако я получаю следующее сообщение об ошибке:Разработка начала и конца дня. Swift
Type of expression is ambiguous without more context.
public class Date {
let dateFormatter = NSDateFormatter()
let date = NSDate()
let calendar = NSCalendar.currentCalendar()
func calcStartAndEndDateForWeek(durationOccurance: Double) {
print("Calculating start and end for week")
let componentsWeek = calendar.components([.YearForWeekOfYear, .WeekOfYear], fromDate: date)
let startOfWeek = calendar.dateFromComponents(componentsWeek)!
print("start of Week = \(dateFormatter.stringFromDate(startOfWeek))")
let componentsWeekEnds = NSDateComponents()
componentsWeekEnds.weekOfYear = 1
let endOfWeek = calendar.dateByAddingComponents(componentsWeekEnds, toDate: startOfWeek, options: [])!
print("End of the week = \(dateFormatter.stringFromDate(endOfWeek))")
}
func calcStartAndEndDateForDay(durationOccurance: Double) {
print("Calculating start and end for day")
let componentsWeek = calendar.components([.Minutes, .Seconds], fromDate: date)
let startOfDay = calendar.dateFromComponents(componentsWeek)!
print("start day = \(dateFormatter.stringFromDate(startOfDay))")
}
init(){
dateFormatter.dateFormat = "dd-MM-yyyy"
}
}
О, вау, спасибо, что это работает! Что-то, что я хотел сделать дальше, это сделать дату окончания через 2 недели. Будет ли это достижимо с помощью этой функции? –
@JessMurray От этого зависит. Функция просто дает вам диапазон для даты и заданного периода времени. Вы можете добавить 2 недели к текущему дню и использовать функцию результата. – Sulthan
Хорошо спасибо, я думаю, я понимаю, что вы имеете в виду. Если бы я хотел, чтобы недели/дни увеличивались на 2, а не на 1, мне пришлось бы менять продолжительность от 0 до 1? –