どうも、ちょげ(@chogetarou)です。
Buttonのタップできるサイズを変更したいと思ったけど、なぜか変更できない。
そういう人に向けて、この記事では「タップ可能領域の変え方」を解説します。
タップできるサイズ

Buttonのタップ出来るサイズは、ボタンのラベル(label)のサイズで決まります。
実は、タップ可能領域はボタン自体の大きさではないのです。
例えば、以下の例を見て下さい。
Button(action: {
}) {
Text("ボタン")
.frame(width: 100, height: 100)
}
.frame(width: 200, height: 200)
labelのTextビューとButtonビューのサイズをそれぞれで設定しています。
タップ出来るサイズはどのくらいでしょうか?
直感的には、200×200ですよね。
ですが、タップ出来る場所のサイズはラベルの大きさなので、タップ出来るサイズはTextビューの100×100になるんです。

まとめ
Buttonのタップ出来るサイズは、ラベルのビューサイズで決まります。
なので、タップ出来る大きさを変えたい場合は、Buttonのサイズではなく、ラベルのサイズを変えましょう。
コメント