当我得到像秒的组件时:
NSCalendar.currentCalendar()。components(.Second,fromDate:savedDate,toDate:todayDate,options:[])。second
我得到了那个日期以来的秒数。 但我试图获得所有组件,如日和小时,它给我每个组件的总数。
如果我得到的时间可以说36小时,那些日子会显示一天。
1 我希望它显示1天12小时。
2. 如何使用这些组件启动计数器或计时器?
答案 0 :(得分:0)
您必须在components
参数中指定要考虑的所有单位。
let components = NSCalendar.currentCalendar().components([.Second, .Minute, .Hour, .Day], fromDate: savedDate, toDate: todayDate, options: [])
print(components)
或者使用NSDateComponentsFormatter
,它可以创建(本地化)字符串。指定要显示的单位和样式。
let formatter = NSDateComponentsFormatter()
formatter.allowedUnits = [.Day, .Hour, .Minute, .Second ]
formatter.unitsStyle = .Full
let dateString = formatter.stringFromDate(savedDate, toDate: todayDate)!
print(dateString)
关于你的第二个问题,让计数器以秒计数,并相应地格式化人类阅读的秒数。