toggleStyle(_:)
声明
func toggleStyle<S>(_ style: S) -> some View where S : ToggleStyle
返回值
为其自身及其子视图使用指定切换样式的视图。
参数
style
要设置的切换样式。使用内置值之一,例如
ToggleStyle/switch
或ToggleStyle/button
,或通过创建符合ToggleStyle
协议的类型定义的自定义样式。
详述
在 Toggle
实例上使用此修饰符来设置定义控件外观和行为的样式。例如,您可以选择ToggleStyle/switch
样式:
Toggle("Vibrate on Ring", isOn: $vibrateOnRing)
.toggleStyle(.switch)
内置样式通常跨平台具有相似的外观,并根据平台的整体样式量身定制:
平台 |
外貌 |
---|---|
iOS、iPadOS | |
macOS |
层次结构中的样式切换
您可以通过将样式修饰符应用于容器视图来为视图层次结构中的所有切换实例设置样式。例如,您可以将 ToggleStyle/button
样式应用于 HStack
:
HStack {
Toggle(isOn: $isFlagged) {
Label("Flag", systemImage: "flag.fill")
}
Toggle(isOn: $isMuted) {
Label("Mute", systemImage: "speaker.slash.fill")
}
}
.toggleStyle(.button)
当 isFlagged
是 true
并且 isMuted
是 false
时,上面的示例具有以下外观:
平台 |
外貌 |
---|---|
iOS、iPadOS | |
macOS |
自动造型
如果您不设置样式,SwiftUI 假定值为 ToggleStyle/automatic
,对应于 context-specific 默认值。显式指定自动样式以覆盖容器的样式并恢复为默认样式:
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 中,大多数情况下的默认切换样式是 ToggleStyle/checkbox
,而在 iOS 中,默认切换样式是 ToggleStyle/switch
:
平台 |
外貌 |
---|---|
iOS、iPadOS | |
macOS |
有关SwiftUI 如何选择默认切换样式的详细信息,请参阅ToggleStyle/automatic
样式。
可用版本
相关用法
- Swift Optional toolbar(id:content:)用法及代码示例
- Swift Optional toolbar(content:)用法及代码示例
- Swift Optional touchBarItemPresence(_:)用法及代码示例
- Swift Optional touchBar(_:)用法及代码示例
- Swift Optional touchBar(content:)用法及代码示例
- Swift Optional touchBarCustomizationLabel(_:)用法及代码示例
- Swift Optional touchBarItemPrincipal(_:)用法及代码示例
- Swift Optional textSelection(_:)用法及代码示例
- Swift Optional tint(_:)用法及代码示例
- Swift Optional tabItem(_:)用法及代码示例
- Swift Optional textContentType(_:)用法及代码示例
- Swift Optional task(priority:_:)用法及代码示例
- Swift Optional transaction(_:)用法及代码示例
- Swift Optional textInputAutocapitalization(_:)用法及代码示例
- Swift Optional truncationMode(_:)用法及代码示例
- Swift Optional tag(_:)用法及代码示例
- Swift Optional transformEffect(_:)用法及代码示例
- Swift Optional task(id:priority:_:)用法及代码示例
- Swift Optional symbolVariant(_:)用法及代码示例
- Swift Optional popover(isPresented:attachmentAnchor:arrowEdge:content:)用法及代码示例
- Swift Optional mask(alignment:_:)用法及代码示例
- Swift Optional listSectionSeparatorTint(_:edges:)用法及代码示例
- Swift Optional badge(_:)用法及代码示例
- Swift Optional fullScreenCover(isPresented:onDismiss:content:)用法及代码示例
- Swift Optional keyboardType(_:)用法及代码示例
注:本文由纯净天空筛选整理自apple.com大神的英文原创作品 Optional toggleStyle(_:)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。