開発Tips&ログ

iOS/Androidアプリ、WEB開発、インフラなどソフトウェア開発についての技術ブログ。

16進数でUIColorを生成するExtension

はじめに

iOS開発において、16進数でUIColorを生成したい場合があります。(他のアプリの色をそのまま取り入れたい時とかが個人的に多い)

その場合の実装方法について書きます。

Extension

早速実装方法です。

UIColor+Extensions.swiftのようなファイルを作成し、下記のように実装できます。

extension UIColor {
    
    static let darkGray = UIColor(hex: 0xEDEAEA)
    static let darkRed = UIColor(hex: 0xD70020)
    
    // Create a UIColor from a hex value (E.g 0x000000)
    convenience init(hex: Int, a: CGFloat = 1.0) {
        self.init(
            red: (hex >> 16) & 0xFF,
            green: (hex >> 8) & 0xFF,
            blue: hex & 0xFF,
            a: a
        )
    }
}

呼び出す

アプリケーションからは下記のように呼び出します。

hogeView.backgroundColor = .darkGray
fugaView.backgroundColor = .darkRed