Chr*_*ord 5 nsdate nscalendar nsdatecomponents swift
下面将创建一个NSDateComponents包含对象day和weekday而不是hour:
var today = NSDate()
var gregorian = NSCalendar(calendarIdentifier: NSGregorianCalendar)
var flags: NSCalendarUnit = .DayCalendarUnit | .WeekdayCalendarUnit
var components = gregorian.components(flags, fromDate: today)
// valid
components.day
components.weekday
// invalid
components.hour
Run Code Online (Sandbox Code Playgroud)
为了拥有hour,我必须|- .HourCalendarUnit就像这样:
flags = flags | .HourCalendarUnit
Run Code Online (Sandbox Code Playgroud)
是否有标志来指定所有标志?或者我只需要手动将|它们全部放入,如果我想要NSDateComponents全部拥有它们?
或者,理想情况下,我只想说today.hour不用就可以NSDateComponents了.这样的课程存在吗?
Mar*_*n R 10
NSCalendarUnit可以使用a初始化UInt,因此这为您提供了所有可能的组件:
var today = NSDate()
var gregorian = NSCalendar(calendarIdentifier: NSGregorianCalendar)
var flags = NSCalendarUnit(UInt.max)
var components = gregorian.components(flags, fromDate: today)
Run Code Online (Sandbox Code Playgroud)
一个today.hour方法不存在,因为计算不可能不知道时区使用的转换来完成.
Swift 2更新:
let gregorian = NSCalendar(calendarIdentifier: NSCalendarIdentifierGregorian)!
let flags = NSCalendarUnit(rawValue: UInt.max)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5356 次 |
| 最近记录: |