實例方法
symbol
symbolVariant(_:)
使視圖中的符號顯示特定變體。
聲明
func symbolVariant(_ variant: SymbolVariants) -> some View
返回值
將指定符號變體或多個變體應用於自身及其子視圖的視圖。
參數
variant
用於符號的變體。使用
SymbolVariants
中的值。
詳述
如果您希望應用程序用戶接口的一部分中的所有 SF Symbols 使用相同的變體,請使用帶有 SymbolVariants
值的 symbolVariant(_:)
修飾符,例如 SymbolVariants/fill-swift.type.property
:
VStack(spacing: 20) {
HStack(spacing: 20) {
Image(systemName: "person")
Image(systemName: "folder")
Image(systemName: "gearshape")
Image(systemName: "list.bullet")
}
HStack(spacing: 20) {
Image(systemName: "person")
Image(systemName: "folder")
Image(systemName: "gearshape")
Image(systemName: "list.bullet")
}
.symbolVariant(.fill) // Shows filled variants, when available.
}
沒有指定變體的符號不受影響。在上麵的示例中,list.bullet
符號沒有填充變量,因此 symbolVariant(_:)
修飾符無效。
如果你多次應用修改器,它的效果會累積。或者,您可以在一次調用中應用多個變體:
Label("Airplane", systemImage: "airplane.circle.fill")
Label("Airplane", systemImage: "airplane")
.symbolVariant(.circle)
.symbolVariant(.fill)
Label("Airplane", systemImage: "airplane")
.symbolVariant(.circle.fill)
上麵代碼中的所有標簽都產生相同的輸出:
您可以按任何順序應用所有這些變體,但如果應用多個形狀變體,則最接近符號的變體優先。例如,下圖使用 SymbolVariants/square-swift.type.property
形狀:
Image(systemName: "arrow.left")
.symbolVariant(.square) // This shape takes precedence.
.symbolVariant(.circle)
.symbolVariant(.fill)
要使符號忽略當前環境中的變體,請使用 View/environment(_:_:)
修飾符直接將 EnvironmentValues/symbolVariants
環境值設置為 SymbolVariants/none
。
可用版本
iOS 15.0+, iPadOS 15.0+, macOS 12.0+, Mac Catalyst 15.0+, tvOS 15.0+, watchOS 8.0+
相關用法
- Swift Optional saturation(_:)用法及代碼示例
- Swift Optional submitLabel(_:)用法及代碼示例
- Swift Optional speechAlwaysIncludesPunctuation(_:)用法及代碼示例
- Swift Optional submitScope(_:)用法及代碼示例
- Swift Optional scaledToFill()用法及代碼示例
- Swift Optional searchCompletion(_:)用法及代碼示例
- Swift Optional safeAreaInset(edge:alignment:spacing:content:)用法及代碼示例
- Swift Optional simultaneousGesture(_:including:)用法及代碼示例
- Swift Optional shadow(color:radius:x:y:)用法及代碼示例
- Swift Optional sheet(item:onDismiss:content:)用法及代碼示例
- Swift Optional scaledToFit()用法及代碼示例
- Swift Optional scenePadding(_:)用法及代碼示例
- Swift Optional scaleEffect(_:anchor:)用法及代碼示例
- Swift Optional scaleEffect(x:y:anchor:)用法及代碼示例
- Swift Optional swipeActions(edge:allowsFullSwipe:content:)用法及代碼示例
- Swift Optional sheet(isPresented:onDismiss:content:)用法及代碼示例
- 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(_:)用法及代碼示例
- Swift Optional clipShape(_:style:)用法及代碼示例
- Swift Optional preferredColorScheme(_:)用法及代碼示例
- Swift Optional background(_:ignoresSafeAreaEdges:)用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Optional symbolVariant(_:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。