Я разрабатываю вид в SwiftUI, который представляет монету. Монета - это кнопка.
Внутри монеты я хочу центрировать текст, представляющий сумму, если текст, скажем, «0,01» для 1 цента.
Проблема в том, что Если размер текста 30, я не могу центрировать текст внутри кнопки. Вот моя попытка, установив для отступа .all
.
Button(action: addToTotal)
{
Text(coinAmount.toTwoDecimalOrTruncatedString())
.font(.system(size: 30))
.fontWeight(.bold)
.multilineTextAlignment(.center)
.lineLimit(0)
}
.padding(.all)
.accentColor(.white)
.frame(width: 100, height: 100, alignment: .bottom)
.background(Color.orange)
.cornerRadius(100)
cointAmount
- это Float
.
toTwoDecimalOrTruncatedString
- это метод расширения, который усекает количество монет к двузначной строке, если число является плавающей точкой.
Я думаю, что проблема связана с отступом, но я не могу отцентрировать текст с точностью до пикселя в представлении кнопки:

Есть предложения?