【发布时间】:2021-10-23 22:49:47
【问题描述】:
我已经设置了注销按钮。该按钮的功能是正确的,可以实际注销。但是有一个问题:当我按下注销按钮时,我无法将页面切换到我想要的视图,即LoginsignupView。我在我的代码中找不到任何错误。
我想知道如何正确制作。
这是关于注销的代码
import SwiftUI
struct MainView: View {
@State private var selection = 0
@ObservedObject private var httpClient = HTTPUser()
@State var isin : Bool = true
var body: some View {
if #available(iOS 14.0, *) {
ZStack{
TabView(selection: $selection){
profile1View()
.tag(0)
.navigationBarBackButtonHidden(true)
.navigationBarHidden(true)
//List(self.httpClient.user,id: \.id){ user in
profile3()
.tag(1)
.navigationBarBackButtonHidden(true)
.navigationBarHidden(true)
ZStack{
Image("background")
.resizable()
.scaledToFill()
.frame(minWidth: 0, maxWidth: .infinity)
.edgesIgnoringSafeArea(.all)
NavigationLink(
destination: LoginsignupView().navigationBarBackButtonHidden(true)
.navigationBarHidden(true))
{
Text("logout").foregroundColor(.white)
.fontWeight(.bold)
.padding(.vertical)
.frame(width: UIScreen.main.bounds.width - 100)
.background(
LinearGradient(gradient: .init(colors: [Color("Color"),Color("Color1"),Color("Color2")]), startPoint: .leading, endPoint: .trailing)
)
}
}
.tag(2)
.onAppear(perform: httpClient.Logout)
.navigationBarBackButtonHidden(true)
.navigationBarHidden(true)
}
.zIndex(0)
.onAppear{
UITabBar.appearance().barTintColor = .white
}
}
}
if #available(iOS 14.0, *) {
TabBarView(selection: $selection)
.tabViewStyle(PageTabViewStyle(indexDisplayMode: .never))
} else {
// Fallback on earlier versions
}
Divider()
}
}
struct MainView_Previews: PreviewProvider {
static var previews: some View {
MainView()
}
}
【问题讨论】:
-
你能创建一个minimal reproducible example吗?没有人可以编译您在此处包含的内容。
标签: swift button swiftui logout