12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970 |
- //
- // ContentUIView.swift
- // fiveConstant
- //
- // Created by 李建 on 2023/1/29.
- //
- import Foundation
- import SwiftUI
- import SwiftyUserDefaults
- struct ContentUIView: View {
- @StateObject var viewRouter: ViewRouter
- @EnvironmentObject var progressState: ProgressState;
- @StateObject var userInfoData: UserInfoData = UserInfoData()
- var body: some View {
- GeometryReader { geometry in
- NavigationView {
- VStack {
- switch viewRouter.currentPage {
- case .home:
- IndexUIView(userInfoData: userInfoData)
- case .my:
- MyUIView()
- case .found:
- FoundUIView()
- case .room:
- RoomUIView()
- }
- Spacer()
- ZStack {
- HStack {
- TabBarIcon(viewRouter: viewRouter, assignedPage: .home,
- width: geometry.size.width/4, height: geometry.size.height/32,
- systemIconName: "house.fill", tabName: "首页")
- .frame(maxWidth: .infinity)
- TabBarIcon(viewRouter: viewRouter, assignedPage: .room,
- width: geometry.size.width/4, height: geometry.size.height/32,
- systemIconName: "entry.lever.keypad.fill", tabName: "房间")
- .frame(maxWidth: .infinity)
- TabBarIcon(viewRouter: viewRouter, assignedPage: .found,
- width: geometry.size.width/4, height: geometry.size.height/32,
- systemIconName: "magnifyingglass.circle.fill", tabName: "发现")
- .frame(maxWidth: .infinity)
- TabBarIcon(viewRouter: viewRouter, assignedPage: .my,
- width: geometry.size.width/4, height: geometry.size.height/32,
- systemIconName: "person.crop.circle.fill", tabName: "我的")
- .frame(maxWidth: .infinity)
- }
- // 将宽度设置为父视图的宽度大小,高度需要微调,可以设置为具体是数值,比如 100
- .frame(width: geometry.size.width, height: geometry.size.height/9)
- .background(Color.gray.opacity(0.05))
- }
- }
- .ignoresSafeArea(edges: .bottom)
- }.navigationBarHidden(true)
- }.onAppear {
- HttpRequest<UserInfo>.loadData(target: UserApi.curent) { returnData in
- Defaults[\.phone] = returnData.phone
- Defaults[\.defaultHomeId] = returnData.default_home_id
- Defaults[\.realName] = returnData.real_name
- Defaults[\.userName] = returnData.user_name
- Defaults[\.photo] = returnData.photo
- userInfoData.photo = returnData.photo
- }
- }
-
- }
-
- }
|