2017-06-18 74 views
1

我想与FUNC
NSColor.init(cgColor:aCGColor)从现有CGColor得到一个NSColor根据文档NSColor.init?(cgColor:aCGColor)暧昧参考

var linienfarbe = CGColor.init(red:0.0,green: 0.0, blue: 1.0,alpha:1.0) 
let textfarbe:NSColor = NSColor.init?(cgColor:linienfarbe) 

我?我得到的错误:

Ambiguous reference to member 'init(colorLiteralRed:green:blue:alpha:)

什么问题出在哪里?

回答

1

获取初始化后,摆脱了可选位:

var linienfarbe = CGColor.init(red:0.0,green: 0.0, blue: 1.0,alpha:1.0) 
let textfarbe:NSColor? = NSColor.init(cgColor:linienfarbe) 

上述结果将是可选的。

,或者你可以这样做:

let textfarbe:NSColor = NSColor.init(cgColor:linienfarbe)! 

另外,如果你不打算再次更改linienfarbe,使它成为一个不可改变的let

+0

非常感谢,这两种解决方案都能做到。我从文档中选择了自己的行,但我在这种情况下的知识似乎仍然很差。 – heimi