【swift】UIViewにグラデーションを付ける。

概要

UIViewを使ってカラーグラデーションを表現します。
作成したレイヤーをサブレイヤーとして追加します。

開発環境

  1. Mac OS 13.1
  2. Xcode 14.0
private func gradient(view: UIView) {
    // CAGradientLayerのオブジェクトのインスタンスを取得します。
    let layer: CAGradientLayer = CAGradientLayer()
    // グラデーションする。2色を指定します。
    let background1 = UIColor.lightText
    let background2 = UIColor.brown
    // レイヤーの範囲を指定します。
    layer.frame.size = CGSize(width: view.bounds.maxX, height: 100)
    // レイヤーに色を指定します。
    layer.colors = [background1.withAlphaComponent(1.0).cgColor,
                 background2.withAlphaComponent(1.0).cgColor]
    // レイヤーの開始位置を指定します。
    layer.startPoint = CGPoint(x: 0.0, y: 0.0)
    // レイヤーの終了位置を指定します。
    layer.endPoint = CGPoint(x: 1.0, y: 0.0)
    view.layer.addSublayer(layer)
}