In previous versions of swift, you would get the colour white like this UIColor.whiteColor()
However, in Swift 3, you get the colour white without initialisers like so UIColor.white
How would I write this same function without having to use initialisers, as UIColor.custom
?
extension UIColor {
func custom() {
return UIColor(white: 0.5, alpha: 1)
}
}
You can use computed properties:
extension UIColor {
static var custom: UIColor {
return UIColor(white: 0.5, alpha: 1)
}
}
.whiteColor()
is a static method (type method) on UIColor
, whereas .white
is a static (computed in my example) property on UIColor
. The difference in defining them looks like:
struct Color {
let red: Int
let green: Int
let blue: Int
static func whiteColor() -> Color {
return Color(red: 255, green: 255, blue: 255)
}
static var white: Color {
return Color(red: 255, green: 255, blue: 255)
}
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With