SwiftUI中的UIButton导航按钮等效于什么
我有一个工作区,我需要一个主视图,它使用按钮推送到包含各自视图的其他项目。这在UI故事板中很容易实现,但是如果没有实现navigationView,这里似乎就没有SwiftUI中的UIButton导航按钮等效于什么,swiftui,Swiftui,我有一个工作区,我需要一个主视图,它使用按钮推送到包含各自视图的其他项目。这在UI故事板中很容易实现,但是如果没有实现navigationView,这里似乎就没有 Button(action: { print("Button action") }) { Image("LIVEMENU") } .padding(.vertical, 2.5) .padding(.horizontal, 2.5) 是当前实现,直到现在它还是占位符 这是我过去
Button(action: {
print("Button action")
}) {
Image("LIVEMENU")
}
.padding(.vertical, 2.5)
.padding(.horizontal, 2.5)
是当前实现,直到现在它还是占位符
这是我过去习惯的
- (IBAction)GoToNext:(id)sender
{
ViewController2 *vc2 = [[ViewController2 alloc] initWithNibName:@"ViewController2" bundle:nil];
[[self navigationController] pushViewController:vc2 animated:YES];
}
您需要使用
导航视图
,但可以将其隐藏
请尝试以下操作:
struct ContentView: View {
@State private var isLinkActive = false
var body: some View {
NavigationView {
VStack {
Button("Go to...") {
// activate link programmatically
self.isLinkActive = true
}
}
// hide navigation bar
.navigationBarTitle("", displayMode: .inline)
.navigationBarHidden(true)
.background(
NavigationLink(destination: SecondView(), isActive: $isLinkActive) {
EmptyView()
}
.hidden()
)
}
}
}
struct SecondView: View {
@Environment(\.presentationMode) private var presentationMode
var body: some View {
Button("Go back") {
self.presentationMode.wrappedValue.dismiss()
}
.navigationBarTitle("", displayMode: .inline)
.navigationBarHidden(true)
}
}
您需要使用
导航视图
,但可以将其隐藏
请尝试以下操作:
struct ContentView: View {
@State private var isLinkActive = false
var body: some View {
NavigationView {
VStack {
Button("Go to...") {
// activate link programmatically
self.isLinkActive = true
}
}
// hide navigation bar
.navigationBarTitle("", displayMode: .inline)
.navigationBarHidden(true)
.background(
NavigationLink(destination: SecondView(), isActive: $isLinkActive) {
EmptyView()
}
.hidden()
)
}
}
}
struct SecondView: View {
@Environment(\.presentationMode) private var presentationMode
var body: some View {
Button("Go back") {
self.presentationMode.wrappedValue.dismiss()
}
.navigationBarTitle("", displayMode: .inline)
.navigationBarHidden(true)
}
}
你说没有导航控制器是什么意思?NavigationView@pawello2222(经过编辑以反映这一点),但你将不会有导航栏返回箭头、标题等。这是你想要的吗?是的,我理解这一点,这就是为什么我希望以这种方式处理导航。(自定义导航)以清除将链接的视图,从而在其中包含导航视图。我计划在这些视图的顶部嵌入一个home按钮,以返回主视图@pawello2222没有导航控制器是什么意思?NavigationView@pawello2222(经过编辑以反映这一点),但您将不会有导航栏返回箭头、标题等。这是您想要的吗?是的,我明白这就是为什么我希望以这种方式处理导航。(自定义导航)以清除将链接的视图,从而在其中包含导航视图。我计划在这些视图的顶部嵌入一个home按钮,以返回主视图@pawello2222第二个视图在工作区中,不是同一个swift文件@pawello2222或者我理解这里的代码有误吗?@RealTechyGod它不必在同一个文件中。@RealTechyGod这可能会帮助你:@RealTechyGod顺便说一句,你最近对我的一些问题进行了投票吗?@RealTechyGod我注意到了你的投票:)但事实上不会有太大帮助-请参阅。第二个视图位于工作区中,而不是同一个swift文件@pawello2222,或者我理解这里的代码有误吗?@RealTechyGod它不必位于同一个文件中。@RealTechyGod这可能会帮到你:@RealTechyGod顺便说一句,你最近对我的一些问题投了赞成票吗?@RealTechyGod我注意到你的反对票:)但是在事实上,这不会有多大帮助——看吧。