1
1

More than 1 year has passed since last update.

【Swift】SnapKitの制約まとめ

Last updated at Posted at 2022-10-10

中央

// 「label」を画面の中央に配置
label.snp.makeConstraints { make in
    make.center.equalToSuperview()
}

スクリーンショット 2022-10-10 22.31.38.png

X中央

// 「label」をXの中央に配置
label.snp.makeConstraints { make in
    make.centerX.equalToSuperview()
}

スクリーンショット 2022-10-10 22.32.31.png

Y中央

// 「label」をYの中央に配置
label.snp.makeConstraints { make in
    make.centerY.equalToSuperview()
}

スクリーンショット 2022-10-10 22.33.14.png

セーフエリアを無視する

// セーフエリアを無視する
label.snp.makeConstraints { make in
    make.edges.equalToSuperview()
}
// or

// セーフエリアを無視する
label.snp.makeConstraints { make in
    make.directionalEdges.equalToSuperview()
}

スクリーンショット 2022-10-10 22.34.32.png

上下のセーフエリアを無視する

// 上下のセーフエリアを無視する
label.snp.makeConstraints { make in
    make.verticalEdges.equalToSuperview()
}
// or

// 上下のセーフエリアを無視する
label.snp.makeConstraints { make in
    make.directionalVerticalEdges.equalToSuperview()
}

スクリーンショット 2022-10-10 22.36.27.png

左右のセーフエリアを無視する

// 左右のセーフエリアを無視する
label.snp.makeConstraints { make in
    make.horizontalEdges.equalToSuperview()
}
// or

// 左右のセーフエリアを無視する
label.snp.makeConstraints { make in
    make.directionalHorizontalEdges.equalToSuperview()
}

スクリーンショット 2022-10-10 22.37.20.png

1番上に配置

// 1番上に配置
label.snp.makeConstraints { make in
    make.top.equalToSuperview()
}

スクリーンショット 2022-10-10 22.37.39.png

1番下に配置

// 1番下に配置
label.snp.makeConstraints { make in
    make.bottom.equalToSuperview()
}

スクリーンショット 2022-10-10 22.38.12.png

1番左に配置

// 1番左に配置
label.snp.makeConstraints { make in
    make.left.equalToSuperview()
}
// or

// 1番左に配置
label.snp.makeConstraints { make in
    make.leading.equalToSuperview()
}

スクリーンショット 2022-10-10 22.38.39.png

1番右に配置

// 1番右に配置
label.snp.makeConstraints { make in
    make.right.equalToSuperview()
}
// or

// 1番右に配置
label.snp.makeConstraints { make in
    make.trailing.equalToSuperview()
}

スクリーンショット 2022-10-10 22.39.13.png

サイズを変更する

// 幅と高さを200に設定する
label.snp.makeConstraints { make in
    make.size.equalTo(100)
}

スクリーンショット 2022-10-10 22.39.39.png

幅を変更する

// 幅を200に設定する
label.snp.makeConstraints { make in
    make.width.equalTo(200)
}

スクリーンショット 2022-10-10 22.40.51.png

高さを変更する

// 高さを200に設定する
label.snp.makeConstraints { make in
    make.height.equalTo(200)
}

スクリーンショット 2022-10-10 22.41.37.png

上からの位置調整

// 「label」の上を(100)動かす
label.snp.makeConstraints { make in
    make.top.equalTo(100)
}

スクリーンショット 2022-10-10 22.42.10.png

ポイント
このように指定することもできます

// 「label」の上が「button」の下と同位置
label.snp.makeConstraints { make in
    make.top.equalTo(button.snp.bottom)
}

下からの位置調整

// 「label」の下を(-100)動かす
label.snp.makeConstraints { make in
    make.bottom.equalTo(-100)
}

スクリーンショット 2022-10-10 22.43.07.png

ポイント
このように指定することもできます

// 「label」の下が「button」の上と同位置
label.snp.makeConstraints { make in
    make.bottom.equalTo(button.snp.top)
}

左からの位置調整

// 「label」の左を(100)動かす
label.snp.makeConstraints { make in
    make.left.equalTo(100)
}
// or

// 「label」の左を(100)動かす
label.snp.makeConstraints { make in
    make.leading.equalTo(100)
}

スクリーンショット 2022-10-10 22.43.48.png

ポイント
このように指定することもできます

// 「label」の左が「button」の右と同位置
label.snp.makeConstraints { make in
    make.left.equalTo(button.snp.right)
}

右からの位置調整

// 「label」の右を(-100)動かす
label.snp.makeConstraints { make in
    make.right.equalTo(-100)
}

// or

// 「label」の右を(-100)動かす
label.snp.makeConstraints { make in
    make.trailing.equalTo(-100)
}

スクリーンショット 2022-10-10 22.45.21.png

ポイント
このように指定することもできます

// 「label」の右が「button」の左と同位置
label.snp.makeConstraints { make in
    make.right.equalTo(button.snp.left)
}

ずらす

// 中心から(100, 100)すらす
label.snp.makeConstraints { make in
    make.center.equalToSuperview().offset(100)
}

スクリーンショット 2022-10-10 22.46.13.png

おわり

まだあると思います
使い始めたばかりなのでコメントでこういうのもあるよって教えてくれると嬉しいです。
新しく見つけたら追加してきます。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1