Saya membuat metode yang seharusnya mengambil string dalam bentuk "YYYY-MM-DD" dan mengeluarkan int yang mewakili posisi tanggal dalam kaitannya dengan minggu itu (terlepas apakah itu tumpang tindih antara bulan). Jadi misal hari minggu = 1 senin = 2 dan seterusnya.
Ini kode saya:
func getDayOfWeek(today:String)->Int{
var formatter:NSDateFormatter = NSDateFormatter()
formatter.dateFormat = "YYYY-MM-DD"
var todayDate:NSDate = formatter.dateFromString(today)!
var myCalendar:NSCalendar = NSCalendar(calendarIdentifier: NSGregorianCalendar)
var myComponents = myCalendar.components(NSCalendarUnit.WeekdayOrdinalCalendarUnit, fromDate: todayDate)
var weekDay = myComponents.weekdayOrdinal
return weekDay
}
Saya tahu itu NSCalendarUnit.WeekdayOrdinalCalendar
salah tetapi saya telah mencoba menurut saya kombinasi yang paling logis. Dan juga telah dipusingkan dengan myComponents.weekdayOrdinal
misal bekas mycomponents.day
atau .weekday
.
Berikut adalah opsi saya tentang apa yang harus digunakan:
static var EraCalendarUnit: NSCalendarUnit { get }
static var YearCalendarUnit: NSCalendarUnit { get }
static var MonthCalendarUnit: NSCalendarUnit { get }
static var DayCalendarUnit: NSCalendarUnit { get }
static var HourCalendarUnit: NSCalendarUnit { get }
static var MinuteCalendarUnit: NSCalendarUnit { get }
static var SecondCalendarUnit: NSCalendarUnit { get }
static var WeekCalendarUnit: NSCalendarUnit { get }
static var WeekdayCalendarUnit: NSCalendarUnit { get }
static var WeekdayOrdinalCalendarUnit: NSCalendarUnit { get }
static var QuarterCalendarUnit: NSCalendarUnit { get }
static var WeekOfMonthCalendarUnit: NSCalendarUnit { get }
static var WeekOfYearCalendarUnit: NSCalendarUnit { get }
static var YearForWeekOfYearCalendarUnit: NSCalendarUnit { get }
static var CalendarCalendarUnit: NSCalendarUnit { get }
static var TimeZoneCalendarUnit: NSCalendarUnit { get }
Tidak jelas bagi saya karena tidak ada opsi DayOfWeekUnit (atau yang serupa).