我试图在我的 iOS 应用程序中使用年度季度,但发现该.quarter组件没有任何作用。我也找不到关于它的文档。
调用print(Calendar.current.date(byAdding: .quarter, value: 1, to: Date()))只是打印当前日期。我会期望它增加 3 个月吗?
你会认为那不是你 - 但不,看起来有些东西坏了。
在 Playground 中进行的快速测试表明,在您使用.quarter:
//: Playground - noun: a place where people can play
import UIKit
let result = Calendar.current.date(byAdding: .quarter, value: 1, to: Date())
print (result)
let calendar1 = Calendar.current
let now1 = Date()
let newDate1 = calendar1.date(byAdding: .minute, value: 1, to: now1)
let newDate2 = calendar1.date(byAdding: .hour, value: 1, to: now1)
let newDate3 = calendar1.date(byAdding: .day, value: 1, to: now1)
let newDate4 = calendar1.date(byAdding: .month, value: 1, to: now1)
let newDate5 = calendar1.date(byAdding: .month, value: 3, to: now1)
let newDate6 = calendar1.date(byAdding: .quarter, value: 1, to: now1)
Run Code Online (Sandbox Code Playgroud)
结果是:
"Sep 27, 2016, 3:30 PM"
"Optional(2016-09-27 05:30:03 +0000)\n"
gregorian (current)
"Sep 27, 2016, 3:30 PM"
"Sep 27, 2016, 3:31 PM"
"Sep 27, 2016, 4:30 PM"
"Sep 28, 2016, 3:30 PM"
"Oct 27, 2016, 3:30 PM"
"Dec 27, 2016, 3:30 PM"
"Sep 27, 2016, 3:30 PM"
Run Code Online (Sandbox Code Playgroud)
看起来就像在 Xcode 8.0 (8A218a) 中一样,您将使用月数和值,3如newDate5上行所示。