Contents

labelsVisibility(_:)

Controls the visibility of labels of any controls contained within this view.

Declaration

nonisolated func labelsVisibility(_ visibility: Visibility) -> some View

Discussion

Use this modifier when you want to omit a label from one or more labeled content in your user interface. For example, the first Toggle in the following example hides its label:

VStack {
    Toggle(isOn: $toggle1) {
        Text("Toggle 1")
    }
    .labelsVisibility(.hidden)

    Toggle(isOn: $toggle2) {
        Text("Toggle 2")
    }
}

The VStack in the example above centers the first toggle’s control element in the available space, while it centers the second toggle’s combined label and control element:

[Image]

Always provide a label for controls, even when you hide the label, because SwiftUI uses labels for other purposes, including accessibility.

On iOS, a Picker within a Menu hides its label by default. You can use this modifier to explicitly show the label in that context:

Menu {
    Picker("Flavor", selection: $selectedFlavor) {
        Text("Chocolate").tag(Flavor.chocolate)
        Text("Vanilla").tag(Flavor.vanilla)
        Text("Strawberry").tag(Flavor.strawberry)
    }
    .labelsVisibility(.visible)
}

See Also

Hiding system elements