UIColor Erweiterung für Hexadezimalwerte
Aus Wikizone
Version vom 6. Januar 2023, 09:05 Uhr von 134.3.86.14 (Diskussion) (Die Seite wurde neu angelegt: „Ungetestet über chatGPT erstellt <syntaxhighlight lang="Swift"> extension UIColor { convenience init(hex: String) { let scanner = Scanner(string:…“)
Ungetestet über chatGPT erstellt
extension UIColor {
convenience init(hex: String) {
let scanner = Scanner(string: hex)
scanner.scanLocation = 0
var rgbValue: UInt64 = 0
scanner.scanHexInt64(&rgbValue)
let r = (rgbValue & 0xff0000) >> 16
let g = (rgbValue & 0xff00) >> 8
let b = rgbValue & 0xff
self.init(
red: CGFloat(r) / 0xff,
green: CGFloat(g) / 0xff,
blue: CGFloat(b) / 0xff, alpha: 1
)
}
}
Dies ist eine Erweiterung der UIColor-Klasse, die eine bequeme Initialisierungsfunktion enthält, die einen Hexadezimal-Farbwert als String akzeptiert und eine UIColor-Instanz erstellt.
Um die Farbe zu verwenden, kannst du dann einfach den Hexadezimal-Wert als String übergeben, wie hier gezeigt:
let color = UIColor(hex: "#aabbcc")