元のドキュメント: developer.apple.com/documentation/swiftui/view/togglestyle(_:)


インスタンスメソッド


toggleStyle(_:)


ビュー階層内のトグルのスタイルを設定します。


iOS 13.0+ iPadOS 13.0+ Mac Catalyst 13.0+ macOS 10.15+

tvOS 13.0+ visionOS 1.0+ watchOS 6.0+

nonisolated
func toggleStyle<S>(_ style: S) -> some View where S : ToggleStyle




パラメータ


style

設定すべきトグルスタイル。switchbutton などの組み込み値を使用するか、ToggleStyle プロトコルに準拠する型を作成して定義するカスタムスタイルを使用して下さい。


戻り値


指定されたトグルスタイルをそれ自身およびその子ビューに使用するビュー。


議論


Toggle インスタンスにこの修飾子を使用すると、コントロールの外観と動作を定義するスタイルを設定できます。たとえば、switch のスタイルを選択できます。


Toggle("Vibrate on Ring", isOn: $vibrateOnRing)
    .toggleStyle(.switch)

組み込みスタイルは通常、プラットフォームの全体的なスタイルに合わせて調整されており、プラットフォーム間で同様の外観を持ちます。


プラットフォーム外観
iOS,iPadOS
macOS


階層におけるトグルスタイル


ビュー階層内のすべてのトグルインスタンスにスタイルを設定するには、コンテナビューにスタイル修飾子を適用します。たとえば、HStackbutton のスタイルを適用できます。


HStack {
    Toggle(isOn: $isFlagged) {
        Label("Flag", systemImage: "flag.fill")
    }
    Toggle(isOn: $isMuted) {
        Label("Mute", systemImage: "speaker.slash.fill")
    }
}
.toggleStyle(.button)

上記の例は、isFlaggedtrueisMutedfalse の場合、以下のような外観になります。


プラットフォーム外観
iOS,iPadOS
macOS


自動スタイリング


スタイルを設定しない場合、SwiftUI は automatic という値を使用します。これはコンテキスト固有のデフォルト値に対応します。コンテナのスタイルを上書きしてデフォルト値に戻すには、automatic スタイルを明示的に指定して下さい。


HStack {
    Toggle(isOn: $isShuffling) {
        Label("Shuffle", systemImage: "shuffle")
    }
    Toggle(isOn: $isRepeating) {
        Label("Repeat", systemImage: "repeat")
    }

    Divider()

    Toggle("Enhance Sound", isOn: $isEnhanced)
        .toggleStyle(.automatic) // Revert to the default style.
}
.toggleStyle(.button) // Use button style for toggles in the stack.
.labelStyle(.iconOnly) // Omit the title from any labels.

SwiftUI がデフォルトとして使用するスタイルは、プラットフォームとコンテキストの両方によって異なります。macOS では、ほとんどのコンテキストでデフォルトは checkbox ですが、iOS では、デフォルトのトグルスタイルは switch です。


プラットフォーム外観
iOS,iPadOS
macOS


注意


toggle に対する toggle style と同様に、labelStyle(_:) 修飾子は階層内の Label インスタンスのスタイルを設定します。上記の例では、スペースが限られた状況でのボタンのトグルに便利な、コンパクトな iconOnly スタイルを示しています。アクセシビリティを向上させるため、常に分かりやすいタイトルを含めるようにしてください。

SwiftUI がデフォルトのトグルスタイルを選択する方法の詳細については、automatic スタイルを参照してください。





以下も見よ


数値入力を取得する


struct Slider

線形の範囲内の値から値を選択するための制御機能。


struct Stepper

増分および減分動作を実行する制御機能。


struct Toggle

オンとオフの状態を切り替えるコントロール。














トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ