diff --git a/AsyncSwift.xcodeproj/project.pbxproj b/AsyncSwift.xcodeproj/project.pbxproj index 51722ce..9aba15d 100644 --- a/AsyncSwift.xcodeproj/project.pbxproj +++ b/AsyncSwift.xcodeproj/project.pbxproj @@ -15,8 +15,11 @@ C68DE94728C76BC500CA4CC8 /* FirebaseMessaging in Frameworks */ = {isa = PBXBuildFile; productRef = C68DE94628C76BC500CA4CC8 /* FirebaseMessaging */; }; C68DE94928C76CB800CA4CC8 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C68DE94828C76CB800CA4CC8 /* GoogleService-Info.plist */; }; C68DE94C28C76F3200CA4CC8 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C68DE94B28C76F3200CA4CC8 /* AppDelegate.swift */; }; - C68DE94F28C77DC900CA4CC8 /* ScheduleView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C68DE94E28C77DC900CA4CC8 /* ScheduleView.swift */; }; - C68DE95128C77DDA00CA4CC8 /* TicketView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C68DE95028C77DDA00CA4CC8 /* TicketView.swift */; }; + C68DE94F28C77DC900CA4CC8 /* EventView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C68DE94E28C77DC900CA4CC8 /* EventView.swift */; }; + C68DE95128C77DDA00CA4CC8 /* TicketingView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C68DE95028C77DDA00CA4CC8 /* TicketingView.swift */; }; + C6F7798728C9CB3A0036773B /* StampView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6F7798628C9CB3A0036773B /* StampView.swift */; }; + C6F7798B28C9CBC60036773B /* EventView+Observed.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6F7798A28C9CBC60036773B /* EventView+Observed.swift */; }; + C6F7798D28C9CBD80036773B /* EventResponse.swift in Sources */ = {isa = PBXBuildFile; fileRef = C6F7798C28C9CBD80036773B /* EventResponse.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -29,8 +32,11 @@ C68DE94A28C76CE000CA4CC8 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = ""; }; C68DE94B28C76F3200CA4CC8 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; C68DE94D28C77CC400CA4CC8 /* AsyncSwift.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = AsyncSwift.entitlements; sourceTree = ""; }; - C68DE94E28C77DC900CA4CC8 /* ScheduleView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScheduleView.swift; sourceTree = ""; }; - C68DE95028C77DDA00CA4CC8 /* TicketView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TicketView.swift; sourceTree = ""; }; + C68DE94E28C77DC900CA4CC8 /* EventView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EventView.swift; sourceTree = ""; }; + C68DE95028C77DDA00CA4CC8 /* TicketingView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TicketingView.swift; sourceTree = ""; }; + C6F7798628C9CB3A0036773B /* StampView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StampView.swift; sourceTree = ""; }; + C6F7798A28C9CBC60036773B /* EventView+Observed.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "EventView+Observed.swift"; sourceTree = ""; }; + C6F7798C28C9CBD80036773B /* EventResponse.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EventResponse.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -69,7 +75,9 @@ C68DE94A28C76CE000CA4CC8 /* Info.plist */, C68DE93528C7685800CA4CC8 /* AsyncSwiftApp.swift */, C68DE94B28C76F3200CA4CC8 /* AppDelegate.swift */, + C6F7798828C9CB9B0036773B /* Identifiable */, C68DE95228C77F4800CA4CC8 /* Views */, + C6F7798928C9CBA60036773B /* Observed */, C68DE93928C7685900CA4CC8 /* Assets.xcassets */, C68DE94828C76CB800CA4CC8 /* GoogleService-Info.plist */, C68DE93B28C7685900CA4CC8 /* Preview Content */, @@ -89,12 +97,29 @@ isa = PBXGroup; children = ( C68DE93728C7685800CA4CC8 /* MainTabView.swift */, - C68DE94E28C77DC900CA4CC8 /* ScheduleView.swift */, - C68DE95028C77DDA00CA4CC8 /* TicketView.swift */, + C68DE94E28C77DC900CA4CC8 /* EventView.swift */, + C68DE95028C77DDA00CA4CC8 /* TicketingView.swift */, + C6F7798628C9CB3A0036773B /* StampView.swift */, ); path = Views; sourceTree = ""; }; + C6F7798828C9CB9B0036773B /* Identifiable */ = { + isa = PBXGroup; + children = ( + C6F7798C28C9CBD80036773B /* EventResponse.swift */, + ); + path = Identifiable; + sourceTree = ""; + }; + C6F7798928C9CBA60036773B /* Observed */ = { + isa = PBXGroup; + children = ( + C6F7798A28C9CBC60036773B /* EventView+Observed.swift */, + ); + path = Observed; + sourceTree = ""; + }; /* End PBXGroup section */ /* Begin PBXNativeTarget section */ @@ -174,10 +199,13 @@ buildActionMask = 2147483647; files = ( C68DE94C28C76F3200CA4CC8 /* AppDelegate.swift in Sources */, - C68DE95128C77DDA00CA4CC8 /* TicketView.swift in Sources */, - C68DE94F28C77DC900CA4CC8 /* ScheduleView.swift in Sources */, + C68DE95128C77DDA00CA4CC8 /* TicketingView.swift in Sources */, + C6F7798B28C9CBC60036773B /* EventView+Observed.swift in Sources */, + C6F7798728C9CB3A0036773B /* StampView.swift in Sources */, + C68DE94F28C77DC900CA4CC8 /* EventView.swift in Sources */, C68DE93828C7685800CA4CC8 /* MainTabView.swift in Sources */, C68DE93628C7685800CA4CC8 /* AsyncSwiftApp.swift in Sources */, + C6F7798D28C9CBD80036773B /* EventResponse.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/AsyncSwift.xcodeproj/project.xcworkspace/xcuserdata/kiminsub.xcuserdatad/UserInterfaceState.xcuserstate b/AsyncSwift.xcodeproj/project.xcworkspace/xcuserdata/kiminsub.xcuserdatad/UserInterfaceState.xcuserstate index 1b73db1..303e159 100644 Binary files a/AsyncSwift.xcodeproj/project.xcworkspace/xcuserdata/kiminsub.xcuserdatad/UserInterfaceState.xcuserstate and b/AsyncSwift.xcodeproj/project.xcworkspace/xcuserdata/kiminsub.xcuserdatad/UserInterfaceState.xcuserstate differ diff --git a/AsyncSwift/Identifiable/EventResponse.swift b/AsyncSwift/Identifiable/EventResponse.swift new file mode 100644 index 0000000..e6d872c --- /dev/null +++ b/AsyncSwift/Identifiable/EventResponse.swift @@ -0,0 +1,12 @@ +// +// EventResponse.swift +// AsyncSwift +// +// Created by Kim Insub on 2022/09/08. +// + +import Foundation + +struct EventResponse: Codable, Identifiable { + +} diff --git a/AsyncSwift/Observed/EventView+Observed.swift b/AsyncSwift/Observed/EventView+Observed.swift new file mode 100644 index 0000000..b22e5af --- /dev/null +++ b/AsyncSwift/Observed/EventView+Observed.swift @@ -0,0 +1,14 @@ +// +// EventView+Observed.swift +// AsyncSwift +// +// Created by Kim Insub on 2022/09/08. +// + +import Foundation + +extension EventView { + final class Observed: ObservableObject { + + } +} diff --git a/AsyncSwift/Views/ScheduleView.swift b/AsyncSwift/Views/EventView.swift similarity index 85% rename from AsyncSwift/Views/ScheduleView.swift rename to AsyncSwift/Views/EventView.swift index 198bf4e..66a7223 100644 --- a/AsyncSwift/Views/ScheduleView.swift +++ b/AsyncSwift/Views/EventView.swift @@ -7,7 +7,7 @@ import SwiftUI -struct ScheduleView: View { +struct EventView: View { var body: some View { Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) } @@ -15,6 +15,6 @@ struct ScheduleView: View { struct ScheduleView_Previews: PreviewProvider { static var previews: some View { - ScheduleView() + EventView() } } diff --git a/AsyncSwift/Views/MainTabView.swift b/AsyncSwift/Views/MainTabView.swift index e387063..8c6dc64 100644 --- a/AsyncSwift/Views/MainTabView.swift +++ b/AsyncSwift/Views/MainTabView.swift @@ -10,13 +10,18 @@ import SwiftUI struct MainTabView: View { var body: some View { TabView { - ScheduleView() + EventView() .tabItem { - Label("일정", systemImage: "quote.opening") + Label("Event", systemImage: "calendar") } - TicketView() + + TicketingView() .tabItem { - Label("티켓", systemImage: "envelope") + Label("Ticketing", systemImage: "banknote") + } + StampView() + .tabItem { + Label("Stamp", systemImage: "checkmark.square") } } } diff --git a/AsyncSwift/Views/StampView.swift b/AsyncSwift/Views/StampView.swift new file mode 100644 index 0000000..f657010 --- /dev/null +++ b/AsyncSwift/Views/StampView.swift @@ -0,0 +1,20 @@ +// +// StampView.swift +// AsyncSwift +// +// Created by Kim Insub on 2022/09/08. +// + +import SwiftUI + +struct StampView: View { + var body: some View { + Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) + } +} + +struct StampView_Previews: PreviewProvider { + static var previews: some View { + StampView() + } +} diff --git a/AsyncSwift/Views/TicketView.swift b/AsyncSwift/Views/TicketingView.swift similarity index 84% rename from AsyncSwift/Views/TicketView.swift rename to AsyncSwift/Views/TicketingView.swift index 46983c3..af93383 100644 --- a/AsyncSwift/Views/TicketView.swift +++ b/AsyncSwift/Views/TicketingView.swift @@ -7,7 +7,7 @@ import SwiftUI -struct TicketView: View { +struct TicketingView: View { var body: some View { Text(/*@START_MENU_TOKEN@*/"Hello, World!"/*@END_MENU_TOKEN@*/) } @@ -15,6 +15,6 @@ struct TicketView: View { struct TicketView_Previews: PreviewProvider { static var previews: some View { - TicketView() + TicketingView() } }