用法一
實例方法
toolbar(content:)
用指定的項目填充工具欄或導航欄。
聲明
func toolbar<Content>(content: () -> Content) -> some View where Content : ToolbarContent
參數
content
表示工具欄內容的項目。
詳述
使用此方法可以使用您提供給工具欄視圖構建器的視圖集合來填充工具欄。
工具欄修飾符需要一個工具欄項目的集合,您可以通過提供一個視圖集合來提供這些項目,每個視圖都包含在 ToolbarItem
中,或者通過提供一個視圖集合作為 ToolbarItemGroup
。下麵的示例使用 ToolbarItem
視圖的集合來創建支持文本編輯函數的 macOS 工具欄:
struct StructToolbarItemGroupView: View {
@State private var text = ""
@State private var bold = false
@State private var italic = false
@State private var fontSize = 12.0
var displayFont: Font {
let font = Font.system(size: CGFloat(fontSize),
weight: bold == true ? .bold : .regular)
return italic == true ? font.italic() : font
}
var body: some View {
TextEditor(text: $text)
.font(displayFont)
.toolbar {
ToolbarItemGroup {
Slider(
value: $fontSize,
in: 8...120,
minimumValueLabel:
Text("A").font(.system(size: 8)),
maximumValueLabel:
Text("A").font(.system(size: 16))
) {
Text("Font Size (\(Int(fontSize)))")
}
.frame(width: 150)
Toggle(isOn: $bold) {
Image(systemName: "bold")
}
Toggle(isOn: $italic) {
Image(systemName: "italic")
}
}
}
.navigationTitle("My Note")
}
}
雖然這不是強製性的,但將一組相關的工具欄項包裝在 ToolbarItemGroup
中可提供控件和工具欄項之間的一對一映射,從而在每個平台上產生正確的布局和間距。有關 macOS 應用程序工具欄的設計指南,請參閱 macOS 人機接口指南 > Toolbars。有關 iOS 應用程序工具欄的設計指南,請參閱 iOS 人機接口指南 > Toolbars。
可用版本
iOS 14.0+, iPadOS 14.0+, macOS 11.0+, Mac Catalyst 14.0+, tvOS 14.0+, watchOS 7.0+
用法二
實例方法
toolbar(content:)
使用您提供的視圖填充工具欄或導航欄。
聲明
func toolbar<Content>(content: () -> Content) -> some View where Content : View
參數
content
表示工具欄內容的視圖。
詳述
使用此修飾符將內容添加到工具欄。工具欄修飾符需要一個工具欄項的集合,您可以通過提供一個包含在 ToolbarItem
中的每個視圖的視圖集合,或者提供一個作為 ToolbarItemGroup
的視圖集合來提供。下麵的示例將視圖添加到使用工具欄項組以支持文本編輯函數:
struct StructToolbarItemGroupView: View {
@State private var text = ""
@State private var bold = false
@State private var italic = false
@State private var fontSize = 12.0
var displayFont: Font {
let font = Font.system(size: CGFloat(fontSize),
weight: bold == true ? .bold : .regular)
return italic == true ? font.italic() : font
}
var body: some View {
TextEditor(text: $text)
.font(displayFont)
.toolbar {
ToolbarItemGroup {
Slider(
value: $fontSize,
in: 8...120,
minimumValueLabel:
Text("A").font(.system(size: 8)),
maximumValueLabel:
Text("A").font(.system(size: 16))
) {
Text("Font Size (\(Int(fontSize)))")
}
.frame(width: 150)
Toggle(isOn: $bold) {
Image(systemName: "bold")
}
Toggle(isOn: $italic) {
Image(systemName: "italic")
}
}
}
.navigationTitle("My Note")
}
}
可用版本
iOS 14.0+, iPadOS 14.0+, macOS 11.0+, Mac Catalyst 14.0+, tvOS 14.0+, watchOS 7.0+
相關用法
- Swift Never toolbar(id:content:)用法及代碼示例
- Swift Never touchBarCustomizationLabel(_:)用法及代碼示例
- Swift Never touchBar(content:)用法及代碼示例
- Swift Never touchBarItemPrincipal(_:)用法及代碼示例
- Swift Never toggleStyle(_:)用法及代碼示例
- Swift Never touchBarItemPresence(_:)用法及代碼示例
- Swift Never touchBar(_:)用法及代碼示例
- Swift Never task(priority:_:)用法及代碼示例
- Swift Never tag(_:)用法及代碼示例
- Swift Never transformEffect(_:)用法及代碼示例
- Swift Never textSelection(_:)用法及代碼示例
- Swift Never task(id:priority:_:)用法及代碼示例
- Swift Never transaction(_:)用法及代碼示例
- Swift Never truncationMode(_:)用法及代碼示例
- Swift Never textInputAutocapitalization(_:)用法及代碼示例
- Swift Never textContentType(_:)用法及代碼示例
- Swift Never tabItem(_:)用法及代碼示例
- Swift Never tint(_:)用法及代碼示例
- Swift Never pageCommand(value:in:step:)用法及代碼示例
- Swift Never opacity(_:)用法及代碼示例
- Swift Never colorMultiply(_:)用法及代碼示例
- Swift Never accessibilityAction(action:label:)用法及代碼示例
- Swift Never alert(isPresented:error:actions:message:)用法及代碼示例
- Swift Never confirmationDialog(_:isPresented:titleVisibility:actions:)用法及代碼示例
- Swift Never flipsForRightToLeftLayoutDirection(_:)用法及代碼示例
注:本文由純淨天空篩選整理自apple.com大神的英文原創作品 Never toolbar(content:)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。