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(_:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。