元のドキュメント: developer.apple.com/documentation/swiftui/toggle/init(_:sources:ison:)


イニシャライザー


init(_:sources:isOn:)


ローカライズされた文字列キーからそのラベルを生成する、値のコレクションを表すトグルを作成します。


iOS 16.0+ iPadOS 16.0+ Mac Catalyst 16.0+ macOS 13.0+ tvOS 16.0+

visionOS 1.0+ watchOS 9.0+

nonisolated
init<C>(
    _ titleKey: LocalizedStringKey,
    sources: C,
    isOn: KeyPath<C.Element, Binding<Bool>>
) where C : RandomAccessCollection

nonisolated
init<C>(
    _ titleResource: LocalizedStringResource,
    sources: C,
    isOn: KeyPath<C.Element, Binding<Bool>>
) where C : RandomAccessCollection

nonisolated
init<S, C>(
    _ title: S,
    sources: C,
    isOn: KeyPath<C.Element, Binding<Bool>>>
) where S : StringProtocol, C : RandomAccessCollection

LabelText の場合利用可能です。





パラメータ


title

トグルの目的を説明する文字列。


sources

トグルの状態をレンダリングするためのソースとして使用される値のコレクション。


isOn

トグルがオン、混合状態、またはオフのいずれの状態になるかを決定する値のキーパス。



議論


このイニシャライザーは、ユーザーに代わって Text ビューを作成し、ローカライズされたキーを init(_:tableName:bundle:comment:) と同様に扱います。文字列のローカライズの詳細については、Text を参照してください。


以下の例では、複数のアラームの状態を表す単一のトグルを作成します。


struct Alarm: Hashable, Identifiable {
    var id = UUID()
    var isOn = false
    var name = ""
}

@State private var alarms = [
    Alarm(isOn: true, name: "Morning"),
    Alarm(isOn: false, name: "Evening")
]

Toggle("Enable all alarms", sources: $alarms, isOn: \.isOn)




以下も見よ


コレクション用のトグルを作成する


init<C>(sources: C, isOn: KeyPath<C.Element, Binding<Bool>>, label: () -> Label)

カスタムラベル付きの値のコレクションを表すトグルを作成します。


init(_:image:sources:isOn:)

ローカライズされた文字列キーと画像リソースからそのラベルを生成する、値のコレクションを表すトグルを作成します。


init(_:systemImage:sources:isOn:)

ローカライズされた文字列キーとシステムイメージからそのラベルを生成する、値のコレクションを表すトグルを作成します。














トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ












トップへ