2017-10-30 9 views
0

私は自分の背景の色の値を取得しようとしています。私のアプリケーションの背景色は、ボタンプレスでランダムに設定されていますが、その色の値をバックグラウンドで取得し、その色を特定できるようにしたいと考えています。これは私が研究から得たものですが、結果をコンソールに出力するたびに0になります。どんな助けも本当にありがとう!ビューの背景色を決定する方法は?

func getBackgroundColor(){ 
    let color = self.view.backgroundColor 

    let colour = UIColor(red: 0.0, green: 1.0, blue: 0.0, alpha: 1.0) 

    self.view.backgroundColor = color 

    var red = CGFloat() 
    var green = CGFloat() 
    var blue = CGFloat() 
    var alpha = CGFloat() 

    print(red, green, blue, alpha) 

    color!.getRed(&red, green: &green, blue: &blue, alpha: &alpha) 

} 
+0

'getRed(_:緑:青:アルファ:)への呼び出しの戻り値を確認し'。 'false'を返すと、その色をRGBカラーとして扱うことができませんでした。背景色をどのように設定するかを示すことができます。 CGFloat = 0 のvar fGreen:CGFloat = 0 のvar fBlue:私はこのコードはVARの色= self.view.backgroundColor VARフレッドをクラッシュした場合、これを取得してみ機能 – rmaddy

答えて

0
let red = self.view.backgroundColor?.ciColor.red 
     let blue = self.view.backgroundColor?.ciColor.blue 
     let green = self.view.backgroundColor?.ciColor.green 
     let alpha = self.view.backgroundColor?.ciColor.alpha 

     print("r \(red) b \(blue) g \(green) a \(alpha) ") 
+0

CGFloat = 0 var fAlpha:CGFloat = 0 if(color?.getRed(&fRed、green:&fGreen、blue:&fBlue、alpha:&fAlpha))! { {} {} else { print( "エラー:色を変換できませんでした") } {color =(fRed)\(fGreen)\(fBlue) –

+0

を呼び出すたび、それがクラッシュし、私のために動作しませんでした – ahmed

関連する問題