どういうことか
frame(width:)
で幅を設定すると機種ごとに見た目がズレるので、画面の幅を基準に設定する。
実装
frame
によって設定するが、background
の手前に書かなきゃいけないっぽい。
Button(action: {
print("押された")
}){
Text("押してください")
.fontWeight(.bold)
.font(.system(size: 20))
// フォントの色
.foregroundColor(Color.white)
// 幅を画面いっぱい、高さも指定(maxWidthを使っている場合、heightだと指定できない)
.frame(maxWidth: .infinity, minHeight: 48)
// ボタンの色
.background(Color.blue)
// 両端にpaddingをかける
.padding(.horizontal, 32)
}
以上。