はじめに
今回はframeモディファイアについてです。
いまいちピンとこないのでわかったことをまとめた記事です。
- はじめに
- frameモディファイアの種類
- Alignmentは center がデフォルト
- .infinityは maxWidth と maxHeightでしか使えない
- minWidthとminHeightの使いどころがわかりません
frameモディファイアの種類
・パターン1
func frame(width: CGFloat? = nil, height: CGFloat? = nil, alignment: Alignment = .center) -> some View
・パターン2
func frame(minWidth: CGFloat? = nil, idealWidth: CGFloat? = nil, maxWidth: CGFloat? = nil, minHeight: CGFloat? = nil, idealHeight: CGFloat? = nil, maxHeight: CGFloat? = nil, alignment: Alignment = .center) -> some View
Alignmentは center がデフォルト
.center
がデフォルト引数として設定されています。
指定なしの場合は縦方向、横方向ともに中央になります
.infinityは maxWidth と maxHeightでしか使えない
.infinityは画面全体幅という意味ではないことに注意
広げることができる最大サイズにするというものです。
なので親ビューが固定サイズであった場合はそれ以上では大きくなりません
固定サイズというのは、今回でいうパターン1で作られたビューが親になっている場合のことなります。
minWidthとminHeightの使いどころがわかりません
これを使ってる記事がなさすぎてどう参考にしたらいいかが分からない。
ということで使わなくていいのではと思っています。