【发布时间】:2017-01-27 11:27:46
【问题描述】:
我一直在将一些代码更新到 Swift 3.0。我正在使用 Melvin Rivera 的精彩 date extension for Swift 3.0。现在 Melvin 将 TimeZone 声明为公共枚举,如下所示:
public enum TimeZone {
case local, utc
}
现在我的 Swift 3.0 之前的代码使用了一些常见的 TimeZone 代码时遇到了问题。例如:
let df = DateFormatter()
df.dateFormat = "MMM d, yyyy, hh:mm a"
df.timeZone = TimeZone(abbreviation: usersTimeZone)
每当我使用这样的代码时,我都会收到一个编译器错误,指出“'TimeZone' 无法构造,因为它没有可访问的初始化程序”。如果 TimeZone 已被构造为公共枚举,那么使用各种 TimeZone 函数的正确方法是什么?
【问题讨论】: