Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Text() is adding extra leading trailing padding SwiftUI

Hi Im creating this design, with swiftUI but I can't figure out why the Text() is adding more padding to the string value, I just want it to the leading trailing, like margins

Design: enter image description here

Result:

enter image description here

Code:

    struct ProductDetailSwiftUIView: View {
    
        var body: some View {
            ZStack {
                ScrollView {
                    VStack {
                        Rectangle()
                            .frame(height: 213)
                            .foregroundColor(Color.blue)
                            
                        Text("Fresas Congeladas La Huerta 500g")
                            .foregroundColor(.black)
                            .font(Font.bodySemibold(22))
                            .multilineTextAlignment(.leading)
                            .frame(maxWidth: .infinity)
                            .background(Color.red)
                            .padding(.leading, 16)
                            .padding(.trailing, 16)
                    }
                }.toolbar {
                    ToolbarItem(placement: .navigationBarTrailing) {
                        Button {
                            print("Hello world🚀")
                        } label: {
                            Label("Back", image:  "cartLine")
                        }.overlay(Badge(count: 1))
                    }
                }
            }
        }
    }
like image 549
Eder Padilla Avatar asked Nov 24 '25 17:11

Eder Padilla


1 Answers

At first Text is aligned centered in frame, so

Text("Fresas Congeladas La Huerta 500g")
    .foregroundColor(.black)
    .font(Font.bodySemibold(22))
    .multilineTextAlignment(.leading)
    .frame(maxWidth: .infinity, alignment: .leading)  // << fix 1 !!
    .background(Color.red)
    .padding(.leading, 16)
    .padding(.trailing, 16)

gives:

demo

At second SwiftUI Text does not allow orphan words. See next for details https://stackoverflow.com/a/71698509/12299030

like image 195
Asperi Avatar answered Nov 26 '25 09:11

Asperi



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!