Ich habe gerade begonnen, einige Swift Code über Swift 3. Die Formatierung für Farbkonstanten hat die Migration geändert vonWarum funktionieren UIColor.white, rot, grün und blau nicht, aber alle anderen Farbkonstanten funktionieren gut?
let color = UIColor.yellowColor() // Swift 2
let color = UIColor.yellow // Swift 3
Die meisten Code mein Projekt wurde gerade fein Migration über diese neue Syntax. Einige der UIColor-Farbkonstanten funktionieren jedoch nicht: UIColor.white
, UIColor.red
, UIColor.green
und UIColor.blue
. Alle anderen UIColor Konstanten, wie UIColor.yellow
, funktionieren gut. Die fehlerhaften Konstanten werden in Autocomplete angezeigt, und Websites online melden, dass sie funktionieren (http://leaks.wanari.com/2016/09/26/converting-project-swift-3-0/).
Allerdings, wenn ich kompilieren die folgende Datei:
import SpriteKit
let aColor = UIColor.black
let aColor2 = UIColor.darkGray
let aColor3 = UIColor.lightGray
let aColor4 = UIColor.white
let aColor5 = UIColor.gray
let aColor6 = UIColor.red
let aColor7 = UIColor.green
let aColor8 = UIColor.blue
let aColor9 = UIColor.cyan
let aColor10 = UIColor.yellow
let aColor11 = UIColor.magenta
let aColor12 = UIColor.orange
let aColor13 = UIColor.purple
let aColor14 = UIColor.brown
let aColor15 = UIColor.clear
let aFakeColor = UIColor.fakeColor
Es gibt die folgenden Fehler:
Instance member 'white' cannot be used on type 'UIColor'
Instance member 'red' cannot be used on type 'UIColor'
Instance member 'green' cannot be used on type 'UIColor'
Instance member 'blue' cannot be used on type 'UIColor'
Type 'UIColor' has no member 'fakeColor'
nun der letzte Fehler macht durchaus Sinn; Es gibt keine Farbkonstante namens fakeColor
. Aber das zeigt, dass der Compiler die fehlerhaften Farbkonstanten sieht, da es einen anderen Fehler gibt.
Gemäß Apple's documentation existieren die fehlerhaften Farbkonstanten. Warum kann mein Compiler sie nicht sehen?
Haben Sie sauber Ihr Projekt versucht, und die Linien neu zu schreiben, die das Problem verursachen. Können Sie das Projekt erstellen? – Starlord
@Joakim Nur das Projekt gereinigt, und es gibt immer noch die gleichen Fehler, wenn ich baue. Noch mehr Ideen? – Cin316
Dies ist für einen Strohhalm greifen, aber ich würde vielleicht versuchen, UIKit direkt importieren, wenn Sie nicht bereits haben. –