Ios SwiftUI中的导航工具
我想知道如何在SwiftUI中使用导航栏 我想把Ios SwiftUI中的导航工具,ios,swift,swiftui,xcode11,Ios,Swift,Swiftui,Xcode11,我想知道如何在SwiftUI中使用导航栏 我想把BarButtonItem和图像放在NavigationBar 我已经能够显示导航栏并放置标题 您应该使用.navigationBarItems()修饰符。例如,您可以像这样添加按钮或图像: .navigationBarItems( leading: Button("Title") { // Actions }, trailing: Button(action: { // A
BarButtonItem
和图像放在NavigationBar
我已经能够显示导航栏并放置标题
您应该使用
.navigationBarItems()
修饰符。例如,您可以像这样添加按钮
或图像
:
.navigationBarItems(
leading: Button("Title") {
// Actions
},
trailing: Button(action: {
// Actions
}, label: { Image("Icon") })
)
.navigationBarItems(
leading: NavigationButtonItem(),
trailing: NavigationImageItem()
)
注:
您可以在那里查看任何。(不仅仅是一个按钮
)
提示
可以将每个项封装在结构中:
struct NavigationButtonItem: View {
var body: some View {
Button("Title") {
// Actions
}
}
}
struct NavigationImageItem: View {
var body: some View {
Button(action: {
// Actions
}, label: { Image("Icon") })
}
}
用户可以这样使用它们:
.navigationBarItems(
leading: Button("Title") {
// Actions
},
trailing: Button(action: {
// Actions
}, label: { Image("Icon") })
)
.navigationBarItems(
leading: NavigationButtonItem(),
trailing: NavigationImageItem()
)
.navigationBarItems()
是您正在寻找的函数。可以指定前导视图、尾随视图或两者。在视图中,可以指定水平和垂直堆栈以添加其他按钮
将此从parentViewController放置
NavigationLink(destination: NotesListView())
迅捷2
在SwiftUI 2/iOS 14中,navigationBarItems
修饰符已被弃用
相反,我们应该使用带有s的工具栏
您可以查看更多工具栏ItemPlacement
s.在正常的swift书写中,有一个.edit按钮可用于创建编辑按钮并为您执行大多数操作。SwiftUI中有类似的功能吗?是的,EditButton()
@Yuto@MojtabaHosseini我正在跟踪您的代码,并尝试添加UIBarButton,例如,.navigationBarTitle(((task.label)”).navigationBarItems(trailing:NavigationButtonItem()),但我无法在按钮上添加操作。你能告诉我可能的问题是什么吗?
NavigationView {
List {
// ...
}
.navigationTitle("Notes")
.toolbar {
ToolbarItem(placement: .navigationBarLeading) {
Button("Tap me") {
// action
}
}
ToolbarItem(placement: .navigationBarTrailing) {
Image(systemName: "plus")
}
}
}