【问题标题】:View Controller Background Color Convert to Hex Color with code in Swift 3使用 Swift 3 中的代码查看控制器背景颜色转换为十六进制颜色
【发布时间】:2017-05-02 18:44:43
【问题描述】:

我在属性检查器中添加视图控制器背景颜色。颜色是“00466E”。


但是,我在我的一个视图控制器中添加了带有代码的颜色。我需要将颜色代码转换为 Hexcolor。

var window_background: String! = "00466E"
window_background = match.value(forKey: "window_background") as! String
collectionview.backgroundColor = UIColor().HexToColor(hexString: window_background)<br>

添加此代码并运行项目后,背景颜色结果不是我想要的。
它有点变化。


任何人都可以解释我添加颜色转换代码时这种颜色是如何出现的?请帮帮我。

【问题讨论】:

  • HexToColor(hexString:)那是什么方法?
  • @May Phyu 您可以从情节提要中获取您颜色的 RGB 颜色代码,并在课堂上应用相同的 rgb 代码。
  • @Larme,我想将颜色代码转换为字符串,因为当我从服务器获取颜色代码(字符串)为“100”(例如)时,应用程序主题颜色包括背景颜色会变成其他颜色。就是这样。
  • 看看这个solution,可能会有所帮助。

标签: ios swift3 uicolor


【解决方案1】:

你可以使用它:

extension UIColor {

    convenience init(hex: Int) {
        let components = (
            R: CGFloat((hex >> 16) & 0xff) / 255,
            G: CGFloat((hex >> 08) & 0xff) / 255,
            B: CGFloat((hex >> 00) & 0xff) / 255
        )

        self.init(red: components.R, green: components.G, blue: components.B, alpha: 1)
    }

}

然后在调用时:

view.backgroundColor =  UIColor(hex:0x00466E)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-30
    • 1970-01-01
    • 2015-04-12
    • 2019-10-29
    • 2012-08-23
    • 1970-01-01
    • 2021-11-26
    相关资源
    最近更新 更多