如何使用NSDate或Cocoa touch中的类似内容获取当月的当前天数?
我一直在使用Swift中的时钟应用程序和Xcode 6.3.2以下代码构建并运行得很好.
// Get current time
let date = NSDate()
let calendar = NSCalendar.currentCalendar()
let components = calendar.components(.CalendarUnitHour | .CalendarUnitMinute | .CalendarUnitSecond | .CalendarUnitNanosecond, fromDate: date)
let hour = components.hour % 12
let minute = components.minute
let second = components.second
let nanosecond = components.nanosecond
Run Code Online (Sandbox Code Playgroud)
但是,当我在Xcode 7.0 beta中加载相同的项目并且不做任何更改时,我在calendar.components行上出现错误.
Could not find member 'CalendarUnitHour'
Run Code Online (Sandbox Code Playgroud)
我查看了文档,并且不推荐使用所有NSCalendarUnit常量(在iOS 8.0中说),但组件方法的方法描述仍然表示要使用它们.
我已经玩过其他NSCalendarUnit自动完成值,但没有产生工作代码,我在网上找不到任何最近的例子,也许是因为这是全新的.
有人知道新的正确方法吗?
我想检查一个月内是否存在特定日期.但无法找到任何帮助.举个例子,我在Playground中尝试了下面的代码;
var components = DateComponents()
components.month = 2
components.year = 2016
components.day = 30
components.calendar = Calendar.current
components.date
Run Code Online (Sandbox Code Playgroud)
这给出了答案;
"Mar 1, 2016, 12:00 AM"
Run Code Online (Sandbox Code Playgroud)
所以它做的是它试图用TimeZones操纵并移动针.因此,我无法找到一种方法来检查特定日期和特定日期是否存在.任何人都可以指导.
有没有方法可以NSDate/NSCalendar计算当月和当年的天数?
我唯一看到的是获得给定日期或两个日期之间的天数.
这是唯一的方法吗?
ios ×3
swift ×3
nscalendar ×2
calendar ×1
cocoa ×1
cocoa-touch ×1
datetime ×1
nsdate ×1
swift2 ×1