2017-06-18 2 views
1

Ich mag mit der Func
NSColor.init eine NSColor aus einem bestehenden CGColor erhalten (cgColor: aCGColor)? Nach dem docsNSColor.init? (CgColor: aCGColor) mehrdeutiger Verweis

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

I bekomme ich den Fehler:

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

Was läuft falsch?

Antwort

1

Sie sich von dem optionalen Bit nach init los:

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

Das obige Ergebnis optional sein.

oder Sie tun können:

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

Auch wenn Sie nicht linienfarbe wieder in Gang zu ändern, ist es eine unveränderliche let machen.

+0

Vielen Dank, beide Lösungen machen den Trick. Ich habe meine Zeile mit dem optionalen Dokument aus der Dokumentation kopiert, aber mein Wissen in diesem Fall scheint immer noch schlecht zu sein. – heimi

Verwandte Themen