【Swift UI】ColorからRGBA値を取得する方法!getRedメソッド

【Swift UI】ColorからRGBA値を取得する方法!getRedメソッド

この記事からわかること

  • Swift UIColor構造体からRGBA値を取得するには?
  • UIColorgetRedメソッドの使い方

index

[open]

\ アプリをリリースしました /

みんなの誕生日

友達や家族の誕生日をメモ!通知も届く-みんなの誕生日-

posted withアプリーチ

環境

Color構造体からRGBA値を取得する方法

Swift UIのColor構造体ではRGBA値を使用してインスタンス化することは可能ですが、インスタンス化されたColorから各RGBA値を取得することができません。

UIColor(red: 0.8, green: 0.2, blue: 0.5, alpha: 1)
Color(red: 0.8, green: 0.2, blue: 0.5, opacity: 1)

これを解消するためにはUIColorgetRedメソッドを使用して以下のような拡張関数を定義しておくと便利です。

extension Color {
  func toRGBA() -> (red: CGFloat, green: CGFloat, blue: CGFloat, alpha: CGFloat) {
      let uiColor = UIColor(self)
      var red: CGFloat = 0
      var green: CGFloat = 0
      var blue: CGFloat = 0
      var alpha: CGFloat = 0
      uiColor.getRed(&red, green: &green, blue: &blue, alpha: &alpha)
      return (red: red, green: green, blue: blue, alpha: alpha)
  }
}

getRedメソッド

公式リファレンス:getRedメソッド

func getRed(
    _ red: UnsafeMutablePointer<CGFloat>?,
    green: UnsafeMutablePointer<CGFloat>?,
    blue: UnsafeMutablePointer<CGFloat>?,
    alpha: UnsafeMutablePointer<CGFloat>?
) -> Bool

getRed対象のUIColorのRGBA値を指定した変数に格納することができるメソッドです。

まだまだ勉強中ですので間違っている点や至らぬ点がありましたら教えていただけると助かります。

ご覧いただきありがとうございました。

searchbox

スポンサー

ProFile

ame

趣味:読書,プログラミング学習,サイト制作,ブログ

IT嫌いを克服するためにITパスを取得しようと勉強してからサイト制作が趣味に変わりました笑
今はCMSを使わずこのサイトを完全自作でサイト運営中〜

New Article

index