我试图获取当周的当前日期,以便根据它的日期更改图像.我的当前代码出错:"条件绑定中的绑定值必须是可选类型." 我对swift和ios很新,所以我不太清楚要改变什么.
func getDayOfWeek()->Int? {
if let todayDate = NSDate() {
let myCalendar = NSCalendar(calendarIdentifier: NSGregorianCalendar)
let myComponents = myCalendar?.components(.WeekdayCalendarUnit, fromDate: todayDate)
let weekDay = myComponents?.weekday
return weekDay
} else {
return nil
}
}
Run Code Online (Sandbox Code Playgroud) 我必须实现图形,这样我才能获得周开始日期和周末日期,如果我将传递日期对象和周数.
我怎样才能实现它我尝试过但却没有完全准确?
以下是我的代码: -
平日: -
//Day of week
func getDayOfWeek(today:String)->Int? {
let formatter = DateFormatter()
formatter.dateFormat = "yyyy-MM-dd"
if let todayDate = formatter.date(from: today) {
let myCalendar = NSCalendar(calendarIdentifier: NSCalendar.Identifier.gregorian)!
let myComponents = myCalendar.components(.weekday, from: todayDate)
let weekDay = myComponents.weekday
return weekDay
} else {
return nil
}
}.
extension Date {
var millisecondsSince1970:Int {
return Int((self.timeIntervalSince1970 * 1000.0).rounded())
}
init(milliseconds:Int) {
self = Date(timeIntervalSince1970: TimeInterval(milliseconds / 1000))
}
func startOfWeek(weekday: Int?) -> Date {
var cal = Calendar.current …Run Code Online (Sandbox Code Playgroud) 我想检查用户一周的第一天是星期一还是星期日,以便使用日历执行某些操作。是否可以确定使用NSCalendar或任何其他方式?
我使用此代码获取当前周的天数:
static func currentDayOfWeek() -> Int {
let comp = NSCalendar.current.dateComponents([.weekday], from: Date())
if comp.weekday == 1 {
return 7
}
return comp.weekday! - 1
}
Monday = 1
Tuesday = 2
...........
Sunday = 7
Run Code Online (Sandbox Code Playgroud)
我无法弄清楚如何获得当月的当月数.
例如,对于今天,当月的数字应该是3和应该是的年份277.
有什么建议 ?