我想将自定义颜色移动到UIColor的扩展名:
extension UIColor {
static var nonSelectedTabColor: UIColor {
return UIColor(white: 0.682, alpha: 1) // #AEAEAE
}
}
但是在试图访问它时,它导致了一个错误:
private static let defaultBorderColor = .nonSelectedTabColor
Reference to member 'nonSelectedTabColor' cannot be resolved without a contextual type
。
这是什么问题?我该如何解决这个问题?
答案 0 :(得分:4)
编译器无法知道您指的是其成员
UIColor
。任
private static let defaultBorderColor = UIColor.nonSelectedTabColor
或
private static let defaultBorderColor: UIColor = .nonSelectedTabColor
会解决问题。在第二行中,类型UIColor
是从上下文推断出来的.nonSelectedTabColor
是一个“隐式成员表达式”。