Firebase iOS (3) 登入主頁完成篇


Posted by quinhsieh on 2022-03-07

開發環境

此篇使用Xcode版本13.0(13A233)SwiftUI

介紹開始

延續上篇 Firebase iOS (2) 實作帳號登入篇
登入畫面實在不友善,在此介紹有主頁及登入頁面的寫法

首先新增兩個頁面如下,左邊為主頁面mainPage.swift,右邊為登入頁面login.swift
Xcode -> File -> New -> File... -> iOS -> SwiftUI View

mainPage.swift加入程式碼

VStack {
    Text("Hello, world!")
    Button("Logout") {
    }
}

將原本在ContentView.swift新增的內容搬移到login.swift
並且加入灰色背景

ZStack {
    Color.gray.ignoresSafeArea(.all)
    VStack {
        TextField("Email", text: $email)
        ...
    }
    .padding()
}

畫面做完後需要新增一個環境來記錄登入的狀態userData.swift
Xcode -> File -> New -> File... -> iOS -> Swift File
新增程式碼:

class userData: ObservableObject {
@Published var isNeedAuth : Bool = true
}

isNeedAuth是用來判斷是否需要登入的狀態true為需要
將狀態新增到mainPage.swift

Button("Logout") {
    userdata.isNeedAuth = true
}

login.swift

func login() {
    ...
    print("success")
    userdata.isNeedAuth = false
    ...
}

最後在ContentView.swift加入主頁就完成了!

var body: some View {
            mainPage()
            .fullScreenCover(isPresented: $userdata.isNeedAuth){
                login()
            }
    }

#Firebase #iOS #SwiftUI







Related Posts

JavaScript 進階 04:物件導向與 Prototype

JavaScript 進階 04:物件導向與 Prototype

W12_作業三簡答題記錄_之五

W12_作業三簡答題記錄_之五

來幫你的程式寫測試吧!

來幫你的程式寫測試吧!


Comments