Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

SwiftUI Disclosure Group Text Alignment

Is there a way to prevent wrapped text in a DisclouseGroup title from being center aligned?

Disclosure group with center aligned text

I have tried to add the following, but neither approach has been effective:

DisclosureGroup("A really long disclosure group title that is being center aligned.", isExpanded: false) {
   ...
}
.multilineTextAlignment(.leading)
DisclosureGroup("A really long disclosure group title that is being center aligned.", isExpanded: false) {
   ...
}
.frame(maxWidth: .infinity, alignment: .leading)
like image 856
Stephen Andrews Avatar asked Oct 31 '25 19:10

Stephen Andrews


1 Answers

You can use the Label initialiser for DisclosureGroup. You can read more about it here

Here is a working example.

struct ContentView: View {

    @State private var isExpanded = false
    var body: some View {
        VStack {
            DisclosureGroup(isExpanded: $isExpanded) {
                Text("This is some text")
            } label: {
                Text("A really long disclosure group title that is being center aligned.")
                    .multilineTextAlignment(.leading)
            }

        }
    }
}

This gives the following output

enter image description here

Tested Xcode 14 beta 4 iOS 16 Simulator

like image 102
Andrew Avatar answered Nov 02 '25 09:11

Andrew