在SwiftUI中获取文本的宽度

时间:2019-06-10 20:57:06

标签: ios swift iphone xcode swiftui

如何获取width组件的Text

我想将Button放在Text下,并将其宽度设为Text本身。

VStack(alignment: .center, spacing: 20) {
      Text("Finde heraus, was gerade in der Welt los ist.")
           .font(.largeTitle).bold().lineLimit(3).multilineTextAlignment(.leading)

      Button(action: {

      }, label: {
           Text("Account erstellen").bold()
               .frame(minWidth: 0, maxWidth: .infinity)
               .frame(height: 40).padding(.top, 0)
               .background(Color.blue)
               .foregroundColor(.white)
               .cornerRadius(20)
      })
}.padding([.leading, .trailing], 25)

哪个给我这个结果,我认为这很丑陋:

enter image description here

在iPad上,文本和按钮之间的宽度更大

我该如何解决这个问题。

谢谢。

1 个答案:

答案 0 :(得分:0)

似乎bold()属性中存在错误。删除它会导致文本按预期对齐。您可以尝试提交错误,也可以等一下,看看它是否在Beta测试期间得到修复。

Text aligned with button width

        Text("Finde heraus, was gerade in der Welt los ist.")
            .font(.largeTitle)
            .lineLimit(3)
            .multilineTextAlignment(.leading)