アラのアラアラしい日記

こっそりかいてます

Swiftの個人的に好きな変数の書き方

変数を定義する時に色々な設定を付加することが多いですが、その時に個人的に好きな書き方の忘備録です。(いつも忘れるので)

UILabelの例です。

let nameLabel = UILabel()
nameLabel.frame = CGRect(x: 0, y: 0, width: 100, height: 100)
nameLabel.text = "wknar"
nameLabel.textColor = .blue
nameLabel.font = .systemFont(ofSize: 20)
nameLabel.textAlignment = .center

このような書き方が以下に書き換えられます。

let nameLabel: UILabel = {
    let label = UILabel(frame: CGRect(x: 0, y: 0, width: 100, height: 100))
    label.text = "wknar"
    label.textColor = .blue
    label.font = .systemFont(ofSize: 20)
    label.textAlignment = .center
    return label
}()

カッコの中にまとめることが出来ます。

個人的にはプロパティが多い場合や、同じような変数を続けてinitする場合に見やすくて良いなと思っています。ビューのクラスは設定内容が多いので使う機会が多いです。

この書き方の呼び方もクロージャでいいのかな?