UIColor com valores hexadecimais

Não existe um método integrado para obter UIColorum valor hexadecimal. Eu me deparei com a dica Coderwall do meu amigo @itseranga sobre como fazer exatamente isso. Ele usa uma função simples para fazer isso.

Como o Swift suporta extensions, podemos ter essa mesma função de uma forma mais elegante.

Simplesmente criei um extensionde UIColore adicionei um convenience init.

import Foundation
import UIKit

extension
UIColor {

convenience init
(hex: UInt32, alpha: CGFloat) {
let red = CGFloat((hex & 0xFF0000) >> 16)/256.0
let green = CGFloat((hex & 0xFF00) >> 8)/256.0
let blue = CGFloat(hex & 0xFF)/256.0

self.init(red: red, green: green, blue: blue, alpha: alpha)
}
}

Agora podemos usar isso como você normalmente usaria a UIColorclasse.

view.backgroundColor = UIColor(hex: 0x444444, alpha: 0.7)

Créditos