UIColorの設定で色が正常に表示されなかった現象
ViewControllerのbackgroundColorに色設定しようとしたのに、何故か真っ暗になって困った話
viewWillAppear(_:)でUIColorでCGFloat(0xNN / 0xMM)みたいに指定して色設定しているのに、実際に表示せたら画面が黒一色だった。
print文で吐かせて数値みたら下記な風になった。
一度変数に格納していると正常な数値が出るのだけれど、格納しない場合は0.0の扱いに。
どうしてこういう挙動なのかわからない…わかるエロい人教えてください!
ひとまず、"bf"のように変数に入れることで無事、色が表示されたので対処はできた。
override func viewWillAppear(animated: Bool) { super.viewDidAppear(animated) let red: CGFloat = 0xaf / 0xff let green: CGFloat = 0xdd / 0xff let blue: CGFloat = 0xe9 / 0xff print("bf r:\(red) g:\(green) b:\(blue)") // bf r:0.686274509803922 g:0.866666666666667 b:0.913725490196078 print("af r:\(CGFloat(0xaf / 0xff)) g:\(CGFloat(0xdd / 0xff)) b:\(CGFloat(0xe9 / 0xff))") // af r:0.0 g:0.0 b:0.0 view.backgroundColor = UIColor(red: red, green: green, blue: blue, alpha: 1.0) }