SwiftUi: Как уменьшить пространство между рамкой и текстом? - PullRequest
1 голос
/ 15 января 2020

Я пытался создать представление для iOS в SwiftUI с прямоугольниками в виде рамок вокруг стеков, но я не могу уменьшить пространство между Text и рамкой HStack.

Итак, подробно: я использую VStack с несколькими HStacks внутри. Проблема возникает, когда я пытаюсь уменьшить пространство между 2 HStacks.

. В следующем фрагменте кода первый Text "Заголовок" находится внутри HStack с Spacer, за которым следует другой HStack с 2 Text элементами внутри.

Я хочу иметь первый Text "Заголовок" прямо над прямоугольником. Нет большого места, как у меня сейчас.

Есть предложения? Большое спасибо.

Код:

var body: some View {   

     VStack() {
         HStack() {
             Text("Title")
                 .font(Font.body)
                 .cornerRadius(ViewConstants.CORNERRADIUS)
                 .padding()
                 .foregroundColor(Colours.BLUE)
             Spacer()
         } 
         HStack(alignment: .firstTextBaseline) {
             Spacer()
             Text("SomeTextText")
                 .font(Font.bold(.body)())
                 .cornerRadius(ViewConstants.CORNERRADIUS)
                 .padding()
                 .foregroundColor(Color.gray)
                 .clipped()
             Text("xx,00")
                 .font(Font.body)
                 .cornerRadius(ViewConstants.CORNERRADIUS)
                 .padding()
                 .foregroundColor(Color.gray)
             Spacer()
         } // HStack
             .overlay(
                 RoundedRectangle(cornerRadius: ViewConstants.CORNERRADIUS)
                     .stroke(Colours.BLUE, lineWidth: 1)
                 )   .padding(.init(top: 0, leading: 3, bottom: 0, trailing: 3))
...

1 Ответ

0 голосов
/ 15 января 2020

Я хочу, чтобы первый текст «Заголовок» находился прямо над прямоугольником. Нет большого пространства, как у меня сейчас.

Я предполагаю, что ожидается

enter image description here

Text("Title")
    .font(Font.body)
    .cornerRadius(ViewConstants.CORNERRADIUS)
    .padding(.horizontal) // << only horizontal padding
...