From f667b0283256d1ec9f9c04c3588b9303dfa45dc9 Mon Sep 17 00:00:00 2001 From: shimyoungmin Date: Tue, 4 May 2021 11:15:01 +0900 Subject: [PATCH 1/6] feat: Create New Project --- .../Baseball.xcodeproj/project.pbxproj | 598 ++++++++++++++++++ .../contents.xcworkspacedata | 7 + .../xcshareddata/IDEWorkspaceChecks.plist | 8 + iOS/Baseball/Baseball/AppDelegate.swift | 21 + .../AccentColor.colorset/Contents.json | 11 + .../AppIcon.appiconset/Contents.json | 98 +++ .../Baseball/Assets.xcassets/Contents.json | 6 + .../Base.lproj/LaunchScreen.storyboard | 25 + .../Baseball/Base.lproj/Main.storyboard | 24 + iOS/Baseball/Baseball/Info.plist | 66 ++ iOS/Baseball/Baseball/SceneDelegate.swift | 18 + iOS/Baseball/Baseball/ViewController.swift | 19 + .../BaseballTests/BaseballTests.swift | 13 + iOS/Baseball/BaseballTests/Info.plist | 22 + .../BaseballUITests/BaseballUITests.swift | 12 + iOS/Baseball/BaseballUITests/Info.plist | 22 + 16 files changed, 970 insertions(+) create mode 100644 iOS/Baseball/Baseball.xcodeproj/project.pbxproj create mode 100644 iOS/Baseball/Baseball.xcodeproj/project.xcworkspace/contents.xcworkspacedata create mode 100644 iOS/Baseball/Baseball.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 iOS/Baseball/Baseball/AppDelegate.swift create mode 100644 iOS/Baseball/Baseball/Assets.xcassets/AccentColor.colorset/Contents.json create mode 100644 iOS/Baseball/Baseball/Assets.xcassets/AppIcon.appiconset/Contents.json create mode 100644 iOS/Baseball/Baseball/Assets.xcassets/Contents.json create mode 100644 iOS/Baseball/Baseball/Base.lproj/LaunchScreen.storyboard create mode 100644 iOS/Baseball/Baseball/Base.lproj/Main.storyboard create mode 100644 iOS/Baseball/Baseball/Info.plist create mode 100644 iOS/Baseball/Baseball/SceneDelegate.swift create mode 100644 iOS/Baseball/Baseball/ViewController.swift create mode 100644 iOS/Baseball/BaseballTests/BaseballTests.swift create mode 100644 iOS/Baseball/BaseballTests/Info.plist create mode 100644 iOS/Baseball/BaseballUITests/BaseballUITests.swift create mode 100644 iOS/Baseball/BaseballUITests/Info.plist diff --git a/iOS/Baseball/Baseball.xcodeproj/project.pbxproj b/iOS/Baseball/Baseball.xcodeproj/project.pbxproj new file mode 100644 index 000000000..f19180c4e --- /dev/null +++ b/iOS/Baseball/Baseball.xcodeproj/project.pbxproj @@ -0,0 +1,598 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 50; + objects = { + +/* Begin PBXBuildFile section */ + D4A2CB682640E4FD0019AFB6 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB672640E4FD0019AFB6 /* AppDelegate.swift */; }; + D4A2CB6A2640E4FD0019AFB6 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB692640E4FD0019AFB6 /* SceneDelegate.swift */; }; + D4A2CB6C2640E4FD0019AFB6 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB6B2640E4FD0019AFB6 /* ViewController.swift */; }; + D4A2CB6F2640E4FD0019AFB6 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D4A2CB6D2640E4FD0019AFB6 /* Main.storyboard */; }; + D4A2CB712640E4FF0019AFB6 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D4A2CB702640E4FF0019AFB6 /* Assets.xcassets */; }; + D4A2CB742640E4FF0019AFB6 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D4A2CB722640E4FF0019AFB6 /* LaunchScreen.storyboard */; }; + D4A2CB7F2640E4FF0019AFB6 /* BaseballTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB7E2640E4FF0019AFB6 /* BaseballTests.swift */; }; + D4A2CB8A2640E4FF0019AFB6 /* BaseballUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB892640E4FF0019AFB6 /* BaseballUITests.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + D4A2CB7B2640E4FF0019AFB6 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D4A2CB5C2640E4FD0019AFB6 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D4A2CB632640E4FD0019AFB6; + remoteInfo = Baseball; + }; + D4A2CB862640E4FF0019AFB6 /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = D4A2CB5C2640E4FD0019AFB6 /* Project object */; + proxyType = 1; + remoteGlobalIDString = D4A2CB632640E4FD0019AFB6; + remoteInfo = Baseball; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + D4A2CB642640E4FD0019AFB6 /* Baseball.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Baseball.app; sourceTree = BUILT_PRODUCTS_DIR; }; + D4A2CB672640E4FD0019AFB6 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; + D4A2CB692640E4FD0019AFB6 /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = ""; }; + D4A2CB6B2640E4FD0019AFB6 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; + D4A2CB6E2640E4FD0019AFB6 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; + D4A2CB702640E4FF0019AFB6 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; + D4A2CB732640E4FF0019AFB6 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; + D4A2CB752640E4FF0019AFB6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + D4A2CB7A2640E4FF0019AFB6 /* BaseballTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = BaseballTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + D4A2CB7E2640E4FF0019AFB6 /* BaseballTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseballTests.swift; sourceTree = ""; }; + D4A2CB802640E4FF0019AFB6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + D4A2CB852640E4FF0019AFB6 /* BaseballUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = BaseballUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + D4A2CB892640E4FF0019AFB6 /* BaseballUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseballUITests.swift; sourceTree = ""; }; + D4A2CB8B2640E4FF0019AFB6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + D4A2CB612640E4FD0019AFB6 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D4A2CB772640E4FF0019AFB6 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D4A2CB822640E4FF0019AFB6 /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + D4A2CB5B2640E4FD0019AFB6 = { + isa = PBXGroup; + children = ( + D4A2CB662640E4FD0019AFB6 /* Baseball */, + D4A2CB7D2640E4FF0019AFB6 /* BaseballTests */, + D4A2CB882640E4FF0019AFB6 /* BaseballUITests */, + D4A2CB652640E4FD0019AFB6 /* Products */, + ); + sourceTree = ""; + }; + D4A2CB652640E4FD0019AFB6 /* Products */ = { + isa = PBXGroup; + children = ( + D4A2CB642640E4FD0019AFB6 /* Baseball.app */, + D4A2CB7A2640E4FF0019AFB6 /* BaseballTests.xctest */, + D4A2CB852640E4FF0019AFB6 /* BaseballUITests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + D4A2CB662640E4FD0019AFB6 /* Baseball */ = { + isa = PBXGroup; + children = ( + D4A2CB672640E4FD0019AFB6 /* AppDelegate.swift */, + D4A2CB692640E4FD0019AFB6 /* SceneDelegate.swift */, + D4A2CB6B2640E4FD0019AFB6 /* ViewController.swift */, + D4A2CB6D2640E4FD0019AFB6 /* Main.storyboard */, + D4A2CB702640E4FF0019AFB6 /* Assets.xcassets */, + D4A2CB722640E4FF0019AFB6 /* LaunchScreen.storyboard */, + D4A2CB752640E4FF0019AFB6 /* Info.plist */, + ); + path = Baseball; + sourceTree = ""; + }; + D4A2CB7D2640E4FF0019AFB6 /* BaseballTests */ = { + isa = PBXGroup; + children = ( + D4A2CB7E2640E4FF0019AFB6 /* BaseballTests.swift */, + D4A2CB802640E4FF0019AFB6 /* Info.plist */, + ); + path = BaseballTests; + sourceTree = ""; + }; + D4A2CB882640E4FF0019AFB6 /* BaseballUITests */ = { + isa = PBXGroup; + children = ( + D4A2CB892640E4FF0019AFB6 /* BaseballUITests.swift */, + D4A2CB8B2640E4FF0019AFB6 /* Info.plist */, + ); + path = BaseballUITests; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXNativeTarget section */ + D4A2CB632640E4FD0019AFB6 /* Baseball */ = { + isa = PBXNativeTarget; + buildConfigurationList = D4A2CB8E2640E4FF0019AFB6 /* Build configuration list for PBXNativeTarget "Baseball" */; + buildPhases = ( + D4A2CB602640E4FD0019AFB6 /* Sources */, + D4A2CB612640E4FD0019AFB6 /* Frameworks */, + D4A2CB622640E4FD0019AFB6 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = Baseball; + productName = Baseball; + productReference = D4A2CB642640E4FD0019AFB6 /* Baseball.app */; + productType = "com.apple.product-type.application"; + }; + D4A2CB792640E4FF0019AFB6 /* BaseballTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = D4A2CB912640E4FF0019AFB6 /* Build configuration list for PBXNativeTarget "BaseballTests" */; + buildPhases = ( + D4A2CB762640E4FF0019AFB6 /* Sources */, + D4A2CB772640E4FF0019AFB6 /* Frameworks */, + D4A2CB782640E4FF0019AFB6 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + D4A2CB7C2640E4FF0019AFB6 /* PBXTargetDependency */, + ); + name = BaseballTests; + productName = BaseballTests; + productReference = D4A2CB7A2640E4FF0019AFB6 /* BaseballTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; + D4A2CB842640E4FF0019AFB6 /* BaseballUITests */ = { + isa = PBXNativeTarget; + buildConfigurationList = D4A2CB942640E4FF0019AFB6 /* Build configuration list for PBXNativeTarget "BaseballUITests" */; + buildPhases = ( + D4A2CB812640E4FF0019AFB6 /* Sources */, + D4A2CB822640E4FF0019AFB6 /* Frameworks */, + D4A2CB832640E4FF0019AFB6 /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + D4A2CB872640E4FF0019AFB6 /* PBXTargetDependency */, + ); + name = BaseballUITests; + productName = BaseballUITests; + productReference = D4A2CB852640E4FF0019AFB6 /* BaseballUITests.xctest */; + productType = "com.apple.product-type.bundle.ui-testing"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + D4A2CB5C2640E4FD0019AFB6 /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 1240; + LastUpgradeCheck = 1240; + TargetAttributes = { + D4A2CB632640E4FD0019AFB6 = { + CreatedOnToolsVersion = 12.4; + }; + D4A2CB792640E4FF0019AFB6 = { + CreatedOnToolsVersion = 12.4; + TestTargetID = D4A2CB632640E4FD0019AFB6; + }; + D4A2CB842640E4FF0019AFB6 = { + CreatedOnToolsVersion = 12.4; + TestTargetID = D4A2CB632640E4FD0019AFB6; + }; + }; + }; + buildConfigurationList = D4A2CB5F2640E4FD0019AFB6 /* Build configuration list for PBXProject "Baseball" */; + compatibilityVersion = "Xcode 9.3"; + developmentRegion = en; + hasScannedForEncodings = 0; + knownRegions = ( + en, + Base, + ); + mainGroup = D4A2CB5B2640E4FD0019AFB6; + productRefGroup = D4A2CB652640E4FD0019AFB6 /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + D4A2CB632640E4FD0019AFB6 /* Baseball */, + D4A2CB792640E4FF0019AFB6 /* BaseballTests */, + D4A2CB842640E4FF0019AFB6 /* BaseballUITests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + D4A2CB622640E4FD0019AFB6 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D4A2CB742640E4FF0019AFB6 /* LaunchScreen.storyboard in Resources */, + D4A2CB712640E4FF0019AFB6 /* Assets.xcassets in Resources */, + D4A2CB6F2640E4FD0019AFB6 /* Main.storyboard in Resources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D4A2CB782640E4FF0019AFB6 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D4A2CB832640E4FF0019AFB6 /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + D4A2CB602640E4FD0019AFB6 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D4A2CB6C2640E4FD0019AFB6 /* ViewController.swift in Sources */, + D4A2CB682640E4FD0019AFB6 /* AppDelegate.swift in Sources */, + D4A2CB6A2640E4FD0019AFB6 /* SceneDelegate.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D4A2CB762640E4FF0019AFB6 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D4A2CB7F2640E4FF0019AFB6 /* BaseballTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + D4A2CB812640E4FF0019AFB6 /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + D4A2CB8A2640E4FF0019AFB6 /* BaseballUITests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + D4A2CB7C2640E4FF0019AFB6 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = D4A2CB632640E4FD0019AFB6 /* Baseball */; + targetProxy = D4A2CB7B2640E4FF0019AFB6 /* PBXContainerItemProxy */; + }; + D4A2CB872640E4FF0019AFB6 /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = D4A2CB632640E4FD0019AFB6 /* Baseball */; + targetProxy = D4A2CB862640E4FF0019AFB6 /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin PBXVariantGroup section */ + D4A2CB6D2640E4FD0019AFB6 /* Main.storyboard */ = { + isa = PBXVariantGroup; + children = ( + D4A2CB6E2640E4FD0019AFB6 /* Base */, + ); + name = Main.storyboard; + sourceTree = ""; + }; + D4A2CB722640E4FF0019AFB6 /* LaunchScreen.storyboard */ = { + isa = PBXVariantGroup; + children = ( + D4A2CB732640E4FF0019AFB6 /* Base */, + ); + name = LaunchScreen.storyboard; + sourceTree = ""; + }; +/* End PBXVariantGroup section */ + +/* Begin XCBuildConfiguration section */ + D4A2CB8C2640E4FF0019AFB6 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 14.4; + MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; + MTL_FAST_MATH = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + D4A2CB8D2640E4FF0019AFB6 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_ENABLE_OBJC_WEAK = YES; + CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_COMMA = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_DOCUMENTATION_COMMENTS = YES; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; + CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; + CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES; + CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; + CLANG_WARN_STRICT_PROTOTYPES = YES; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + COPY_PHASE_STRIP = NO; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu11; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 14.4; + MTL_ENABLE_DEBUG_INFO = NO; + MTL_FAST_MATH = YES; + SDKROOT = iphoneos; + SWIFT_COMPILATION_MODE = wholemodule; + SWIFT_OPTIMIZATION_LEVEL = "-O"; + VALIDATE_PRODUCT = YES; + }; + name = Release; + }; + D4A2CB8F2640E4FF0019AFB6 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = B3PWYBKFUK; + INFOPLIST_FILE = Baseball/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.Baseball; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Debug; + }; + D4A2CB902640E4FF0019AFB6 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; + ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = B3PWYBKFUK; + INFOPLIST_FILE = Baseball/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.Baseball; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + }; + name = Release; + }; + D4A2CB922640E4FF0019AFB6 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = B3PWYBKFUK; + INFOPLIST_FILE = BaseballTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 14.4; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.BaseballTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Baseball.app/Baseball"; + }; + name = Debug; + }; + D4A2CB932640E4FF0019AFB6 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + BUNDLE_LOADER = "$(TEST_HOST)"; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = B3PWYBKFUK; + INFOPLIST_FILE = BaseballTests/Info.plist; + IPHONEOS_DEPLOYMENT_TARGET = 14.4; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.BaseballTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Baseball.app/Baseball"; + }; + name = Release; + }; + D4A2CB952640E4FF0019AFB6 /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = B3PWYBKFUK; + INFOPLIST_FILE = BaseballUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.BaseballUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = Baseball; + }; + name = Debug; + }; + D4A2CB962640E4FF0019AFB6 /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; + CODE_SIGN_STYLE = Automatic; + DEVELOPMENT_TEAM = B3PWYBKFUK; + INFOPLIST_FILE = BaseballUITests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = ( + "$(inherited)", + "@executable_path/Frameworks", + "@loader_path/Frameworks", + ); + PRODUCT_BUNDLE_IDENTIFIER = com.BaseballUITests; + PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 5.0; + TARGETED_DEVICE_FAMILY = "1,2"; + TEST_TARGET_NAME = Baseball; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + D4A2CB5F2640E4FD0019AFB6 /* Build configuration list for PBXProject "Baseball" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D4A2CB8C2640E4FF0019AFB6 /* Debug */, + D4A2CB8D2640E4FF0019AFB6 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D4A2CB8E2640E4FF0019AFB6 /* Build configuration list for PBXNativeTarget "Baseball" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D4A2CB8F2640E4FF0019AFB6 /* Debug */, + D4A2CB902640E4FF0019AFB6 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D4A2CB912640E4FF0019AFB6 /* Build configuration list for PBXNativeTarget "BaseballTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D4A2CB922640E4FF0019AFB6 /* Debug */, + D4A2CB932640E4FF0019AFB6 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + D4A2CB942640E4FF0019AFB6 /* Build configuration list for PBXNativeTarget "BaseballUITests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + D4A2CB952640E4FF0019AFB6 /* Debug */, + D4A2CB962640E4FF0019AFB6 /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; +/* End XCConfigurationList section */ + }; + rootObject = D4A2CB5C2640E4FD0019AFB6 /* Project object */; +} diff --git a/iOS/Baseball/Baseball.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/iOS/Baseball/Baseball.xcodeproj/project.xcworkspace/contents.xcworkspacedata new file mode 100644 index 000000000..919434a62 --- /dev/null +++ b/iOS/Baseball/Baseball.xcodeproj/project.xcworkspace/contents.xcworkspacedata @@ -0,0 +1,7 @@ + + + + + diff --git a/iOS/Baseball/Baseball.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/iOS/Baseball/Baseball.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist new file mode 100644 index 000000000..18d981003 --- /dev/null +++ b/iOS/Baseball/Baseball.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist @@ -0,0 +1,8 @@ + + + + + IDEDidComputeMac32BitWarning + + + diff --git a/iOS/Baseball/Baseball/AppDelegate.swift b/iOS/Baseball/Baseball/AppDelegate.swift new file mode 100644 index 000000000..5262ab080 --- /dev/null +++ b/iOS/Baseball/Baseball/AppDelegate.swift @@ -0,0 +1,21 @@ +// +// AppDelegate.swift +// Baseball +// +// Created by 심영민 on 2021/05/04. +// + +import UIKit + +@main +class AppDelegate: UIResponder, UIApplicationDelegate { + + func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { + return true + } + + func application(_ application: UIApplication, configurationForConnecting connectingSceneSession: UISceneSession, options: UIScene.ConnectionOptions) -> UISceneConfiguration { + return UISceneConfiguration(name: "Default Configuration", sessionRole: connectingSceneSession.role) + } +} + diff --git a/iOS/Baseball/Baseball/Assets.xcassets/AccentColor.colorset/Contents.json b/iOS/Baseball/Baseball/Assets.xcassets/AccentColor.colorset/Contents.json new file mode 100644 index 000000000..eb8789700 --- /dev/null +++ b/iOS/Baseball/Baseball/Assets.xcassets/AccentColor.colorset/Contents.json @@ -0,0 +1,11 @@ +{ + "colors" : [ + { + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/iOS/Baseball/Baseball/Assets.xcassets/AppIcon.appiconset/Contents.json b/iOS/Baseball/Baseball/Assets.xcassets/AppIcon.appiconset/Contents.json new file mode 100644 index 000000000..9221b9bb1 --- /dev/null +++ b/iOS/Baseball/Baseball/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -0,0 +1,98 @@ +{ + "images" : [ + { + "idiom" : "iphone", + "scale" : "2x", + "size" : "20x20" + }, + { + "idiom" : "iphone", + "scale" : "3x", + "size" : "20x20" + }, + { + "idiom" : "iphone", + "scale" : "2x", + "size" : "29x29" + }, + { + "idiom" : "iphone", + "scale" : "3x", + "size" : "29x29" + }, + { + "idiom" : "iphone", + "scale" : "2x", + "size" : "40x40" + }, + { + "idiom" : "iphone", + "scale" : "3x", + "size" : "40x40" + }, + { + "idiom" : "iphone", + "scale" : "2x", + "size" : "60x60" + }, + { + "idiom" : "iphone", + "scale" : "3x", + "size" : "60x60" + }, + { + "idiom" : "ipad", + "scale" : "1x", + "size" : "20x20" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "20x20" + }, + { + "idiom" : "ipad", + "scale" : "1x", + "size" : "29x29" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "29x29" + }, + { + "idiom" : "ipad", + "scale" : "1x", + "size" : "40x40" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "40x40" + }, + { + "idiom" : "ipad", + "scale" : "1x", + "size" : "76x76" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "76x76" + }, + { + "idiom" : "ipad", + "scale" : "2x", + "size" : "83.5x83.5" + }, + { + "idiom" : "ios-marketing", + "scale" : "1x", + "size" : "1024x1024" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/iOS/Baseball/Baseball/Assets.xcassets/Contents.json b/iOS/Baseball/Baseball/Assets.xcassets/Contents.json new file mode 100644 index 000000000..73c00596a --- /dev/null +++ b/iOS/Baseball/Baseball/Assets.xcassets/Contents.json @@ -0,0 +1,6 @@ +{ + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/iOS/Baseball/Baseball/Base.lproj/LaunchScreen.storyboard b/iOS/Baseball/Baseball/Base.lproj/LaunchScreen.storyboard new file mode 100644 index 000000000..865e9329f --- /dev/null +++ b/iOS/Baseball/Baseball/Base.lproj/LaunchScreen.storyboard @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard new file mode 100644 index 000000000..25a763858 --- /dev/null +++ b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iOS/Baseball/Baseball/Info.plist b/iOS/Baseball/Baseball/Info.plist new file mode 100644 index 000000000..5b531f7b2 --- /dev/null +++ b/iOS/Baseball/Baseball/Info.plist @@ -0,0 +1,66 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + LSRequiresIPhoneOS + + UIApplicationSceneManifest + + UIApplicationSupportsMultipleScenes + + UISceneConfigurations + + UIWindowSceneSessionRoleApplication + + + UISceneConfigurationName + Default Configuration + UISceneDelegateClassName + $(PRODUCT_MODULE_NAME).SceneDelegate + UISceneStoryboardFile + Main + + + + + UIApplicationSupportsIndirectInputEvents + + UILaunchStoryboardName + LaunchScreen + UIMainStoryboardFile + Main + UIRequiredDeviceCapabilities + + armv7 + + UISupportedInterfaceOrientations + + UIInterfaceOrientationPortrait + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + UISupportedInterfaceOrientations~ipad + + UIInterfaceOrientationPortrait + UIInterfaceOrientationPortraitUpsideDown + UIInterfaceOrientationLandscapeLeft + UIInterfaceOrientationLandscapeRight + + + diff --git a/iOS/Baseball/Baseball/SceneDelegate.swift b/iOS/Baseball/Baseball/SceneDelegate.swift new file mode 100644 index 000000000..e0755fa58 --- /dev/null +++ b/iOS/Baseball/Baseball/SceneDelegate.swift @@ -0,0 +1,18 @@ +// +// SceneDelegate.swift +// Baseball +// +// Created by 심영민 on 2021/05/04. +// + +import UIKit + +class SceneDelegate: UIResponder, UIWindowSceneDelegate { + + var window: UIWindow? + + func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) { + guard let _ = (scene as? UIWindowScene) else { return } + } +} + diff --git a/iOS/Baseball/Baseball/ViewController.swift b/iOS/Baseball/Baseball/ViewController.swift new file mode 100644 index 000000000..db1a6e568 --- /dev/null +++ b/iOS/Baseball/Baseball/ViewController.swift @@ -0,0 +1,19 @@ +// +// ViewController.swift +// Baseball +// +// Created by 심영민 on 2021/05/04. +// + +import UIKit + +class ViewController: UIViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + } + + +} + diff --git a/iOS/Baseball/BaseballTests/BaseballTests.swift b/iOS/Baseball/BaseballTests/BaseballTests.swift new file mode 100644 index 000000000..871a60d12 --- /dev/null +++ b/iOS/Baseball/BaseballTests/BaseballTests.swift @@ -0,0 +1,13 @@ +// +// BaseballTests.swift +// BaseballTests +// +// Created by 심영민 on 2021/05/04. +// + +import XCTest +@testable import Baseball + +class BaseballTests: XCTestCase { + +} diff --git a/iOS/Baseball/BaseballTests/Info.plist b/iOS/Baseball/BaseballTests/Info.plist new file mode 100644 index 000000000..64d65ca49 --- /dev/null +++ b/iOS/Baseball/BaseballTests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + diff --git a/iOS/Baseball/BaseballUITests/BaseballUITests.swift b/iOS/Baseball/BaseballUITests/BaseballUITests.swift new file mode 100644 index 000000000..fde9a1bd0 --- /dev/null +++ b/iOS/Baseball/BaseballUITests/BaseballUITests.swift @@ -0,0 +1,12 @@ +// +// BaseballUITests.swift +// BaseballUITests +// +// Created by 심영민 on 2021/05/04. +// + +import XCTest + +class BaseballUITests: XCTestCase { + +} diff --git a/iOS/Baseball/BaseballUITests/Info.plist b/iOS/Baseball/BaseballUITests/Info.plist new file mode 100644 index 000000000..64d65ca49 --- /dev/null +++ b/iOS/Baseball/BaseballUITests/Info.plist @@ -0,0 +1,22 @@ + + + + + CFBundleDevelopmentRegion + $(DEVELOPMENT_LANGUAGE) + CFBundleExecutable + $(EXECUTABLE_NAME) + CFBundleIdentifier + $(PRODUCT_BUNDLE_IDENTIFIER) + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + $(PRODUCT_NAME) + CFBundlePackageType + $(PRODUCT_BUNDLE_PACKAGE_TYPE) + CFBundleShortVersionString + 1.0 + CFBundleVersion + 1 + + From 363c96b63b653ddf938ddaa81276198ad51db827 Mon Sep 17 00:00:00 2001 From: shimyoungmin Date: Tue, 4 May 2021 14:36:28 +0900 Subject: [PATCH 2/6] [#2] feat: Add GameListCell MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 게임목록을 표현할 GameList Custom Cell 작성 --- .../Baseball.xcodeproj/project.pbxproj | 8 ++ .../Baseball/Base.lproj/Main.storyboard | 58 +++++++++- iOS/Baseball/Baseball/GameListCell.swift | 25 +++++ iOS/Baseball/Baseball/GameListCell.xib | 104 ++++++++++++++++++ iOS/Baseball/Baseball/ViewController.swift | 23 +++- 5 files changed, 210 insertions(+), 8 deletions(-) create mode 100644 iOS/Baseball/Baseball/GameListCell.swift create mode 100644 iOS/Baseball/Baseball/GameListCell.xib diff --git a/iOS/Baseball/Baseball.xcodeproj/project.pbxproj b/iOS/Baseball/Baseball.xcodeproj/project.pbxproj index f19180c4e..c459d08db 100644 --- a/iOS/Baseball/Baseball.xcodeproj/project.pbxproj +++ b/iOS/Baseball/Baseball.xcodeproj/project.pbxproj @@ -15,6 +15,8 @@ D4A2CB742640E4FF0019AFB6 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D4A2CB722640E4FF0019AFB6 /* LaunchScreen.storyboard */; }; D4A2CB7F2640E4FF0019AFB6 /* BaseballTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB7E2640E4FF0019AFB6 /* BaseballTests.swift */; }; D4A2CB8A2640E4FF0019AFB6 /* BaseballUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB892640E4FF0019AFB6 /* BaseballUITests.swift */; }; + D4A2CB9C2640E5E60019AFB6 /* GameListCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB9A2640E5E60019AFB6 /* GameListCell.swift */; }; + D4A2CB9D2640E5E60019AFB6 /* GameListCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = D4A2CB9B2640E5E60019AFB6 /* GameListCell.xib */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -49,6 +51,8 @@ D4A2CB852640E4FF0019AFB6 /* BaseballUITests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = BaseballUITests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; D4A2CB892640E4FF0019AFB6 /* BaseballUITests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseballUITests.swift; sourceTree = ""; }; D4A2CB8B2640E4FF0019AFB6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + D4A2CB9A2640E5E60019AFB6 /* GameListCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GameListCell.swift; sourceTree = ""; }; + D4A2CB9B2640E5E60019AFB6 /* GameListCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GameListCell.xib; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -103,6 +107,8 @@ D4A2CB692640E4FD0019AFB6 /* SceneDelegate.swift */, D4A2CB6B2640E4FD0019AFB6 /* ViewController.swift */, D4A2CB6D2640E4FD0019AFB6 /* Main.storyboard */, + D4A2CB9A2640E5E60019AFB6 /* GameListCell.swift */, + D4A2CB9B2640E5E60019AFB6 /* GameListCell.xib */, D4A2CB702640E4FF0019AFB6 /* Assets.xcassets */, D4A2CB722640E4FF0019AFB6 /* LaunchScreen.storyboard */, D4A2CB752640E4FF0019AFB6 /* Info.plist */, @@ -234,6 +240,7 @@ D4A2CB742640E4FF0019AFB6 /* LaunchScreen.storyboard in Resources */, D4A2CB712640E4FF0019AFB6 /* Assets.xcassets in Resources */, D4A2CB6F2640E4FD0019AFB6 /* Main.storyboard in Resources */, + D4A2CB9D2640E5E60019AFB6 /* GameListCell.xib in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -261,6 +268,7 @@ D4A2CB6C2640E4FD0019AFB6 /* ViewController.swift in Sources */, D4A2CB682640E4FD0019AFB6 /* AppDelegate.swift in Sources */, D4A2CB6A2640E4FD0019AFB6 /* SceneDelegate.swift in Sources */, + D4A2CB9C2640E5E60019AFB6 /* GameListCell.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard index 25a763858..944393d50 100644 --- a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard +++ b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard @@ -1,24 +1,72 @@ - + + - + + + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iOS/Baseball/Baseball/GameListCell.swift b/iOS/Baseball/Baseball/GameListCell.swift new file mode 100644 index 000000000..1575e714a --- /dev/null +++ b/iOS/Baseball/Baseball/GameListCell.swift @@ -0,0 +1,25 @@ +// +// GameListCell.swift +// Baseball +// +// Created by 심영민 on 2021/05/04. +// + +import UIKit + +class GameListCell: UICollectionViewCell { + + @IBOutlet weak var gameCountLabel: UILabel! + @IBOutlet weak var awayTeamNameLabel: UILabel! + @IBOutlet weak var homeTeamNameLabel: UILabel! + static let identifier = "GameListCell" + + override func awakeFromNib() { + super.awakeFromNib() + self.awayTeamNameLabel.text = "Rockets" + } + + static var nib: UINib { + return UINib(nibName: identifier, bundle: nil) + } +} diff --git a/iOS/Baseball/Baseball/GameListCell.xib b/iOS/Baseball/Baseball/GameListCell.xib new file mode 100644 index 000000000..da21815f5 --- /dev/null +++ b/iOS/Baseball/Baseball/GameListCell.xib @@ -0,0 +1,104 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/iOS/Baseball/Baseball/ViewController.swift b/iOS/Baseball/Baseball/ViewController.swift index db1a6e568..540b34d9e 100644 --- a/iOS/Baseball/Baseball/ViewController.swift +++ b/iOS/Baseball/Baseball/ViewController.swift @@ -8,12 +8,29 @@ import UIKit class ViewController: UIViewController { - + @IBOutlet weak var gameListCollectionView: UICollectionView! + override func viewDidLoad() { super.viewDidLoad() - + self.gameListCollectionView.delegate = self + self.gameListCollectionView.dataSource = self + self.gameListCollectionView.register(GameListCell.nib, forCellWithReuseIdentifier: GameListCell.identifier) } +} - +extension ViewController: UICollectionViewDataSource { + func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { + return 4 + } + + func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { + guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: GameListCell.identifier, for: indexPath) as? GameListCell else { + return GameListCell() + } + return cell + + } } +extension ViewController: UICollectionViewDelegate {} + From beff3222e21b5cf9bedcbcc942cf57703b1f8368 Mon Sep 17 00:00:00 2001 From: shimyoungmin Date: Tue, 4 May 2021 15:24:44 +0900 Subject: [PATCH 3/6] [#2]feat: Complete GameList View MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 첫번째 게임목록 화면 UI 구현 --- iOS/Baseball/Baseball/Base.lproj/Main.storyboard | 10 +++++----- iOS/Baseball/Baseball/GameListCell.xib | 12 ++++++------ iOS/Baseball/Baseball/ViewController.swift | 9 ++++++++- 3 files changed, 19 insertions(+), 12 deletions(-) diff --git a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard index 944393d50..39ad8e5d7 100644 --- a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard +++ b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard @@ -20,18 +20,18 @@ - - + + - + - - + + diff --git a/iOS/Baseball/Baseball/GameListCell.xib b/iOS/Baseball/Baseball/GameListCell.xib index da21815f5..2d7cb147d 100644 --- a/iOS/Baseball/Baseball/GameListCell.xib +++ b/iOS/Baseball/Baseball/GameListCell.xib @@ -21,7 +21,7 @@ + @@ -61,12 +69,280 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + From de77fad862bb405babcf0d227c5b660a6557e418 Mon Sep 17 00:00:00 2001 From: shimyoungmin Date: Thu, 6 May 2021 14:20:51 +0900 Subject: [PATCH 5/6] [#2]feat: Create 3rd Screen MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 세번째 Score 화면 생성 --- .../Baseball.xcodeproj/project.pbxproj | 4 + .../Baseball/Base.lproj/Main.storyboard | 459 +++++++++++++++++- .../Baseball/ScoresViewController.swift | 67 +++ 3 files changed, 528 insertions(+), 2 deletions(-) create mode 100644 iOS/Baseball/Baseball/ScoresViewController.swift diff --git a/iOS/Baseball/Baseball.xcodeproj/project.pbxproj b/iOS/Baseball/Baseball.xcodeproj/project.pbxproj index c459d08db..e870691e5 100644 --- a/iOS/Baseball/Baseball.xcodeproj/project.pbxproj +++ b/iOS/Baseball/Baseball.xcodeproj/project.pbxproj @@ -17,6 +17,7 @@ D4A2CB8A2640E4FF0019AFB6 /* BaseballUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB892640E4FF0019AFB6 /* BaseballUITests.swift */; }; D4A2CB9C2640E5E60019AFB6 /* GameListCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CB9A2640E5E60019AFB6 /* GameListCell.swift */; }; D4A2CB9D2640E5E60019AFB6 /* GameListCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = D4A2CB9B2640E5E60019AFB6 /* GameListCell.xib */; }; + D4A2CBA8264382B00019AFB6 /* ScoresViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = D4A2CBA7264382B00019AFB6 /* ScoresViewController.swift */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -53,6 +54,7 @@ D4A2CB8B2640E4FF0019AFB6 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; D4A2CB9A2640E5E60019AFB6 /* GameListCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GameListCell.swift; sourceTree = ""; }; D4A2CB9B2640E5E60019AFB6 /* GameListCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = GameListCell.xib; sourceTree = ""; }; + D4A2CBA7264382B00019AFB6 /* ScoresViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ScoresViewController.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -107,6 +109,7 @@ D4A2CB692640E4FD0019AFB6 /* SceneDelegate.swift */, D4A2CB6B2640E4FD0019AFB6 /* ViewController.swift */, D4A2CB6D2640E4FD0019AFB6 /* Main.storyboard */, + D4A2CBA7264382B00019AFB6 /* ScoresViewController.swift */, D4A2CB9A2640E5E60019AFB6 /* GameListCell.swift */, D4A2CB9B2640E5E60019AFB6 /* GameListCell.xib */, D4A2CB702640E4FF0019AFB6 /* Assets.xcassets */, @@ -266,6 +269,7 @@ buildActionMask = 2147483647; files = ( D4A2CB6C2640E4FD0019AFB6 /* ViewController.swift in Sources */, + D4A2CBA8264382B00019AFB6 /* ScoresViewController.swift in Sources */, D4A2CB682640E4FD0019AFB6 /* AppDelegate.swift in Sources */, D4A2CB6A2640E4FD0019AFB6 /* SceneDelegate.swift in Sources */, D4A2CB9C2640E5E60019AFB6 /* GameListCell.swift in Sources */, diff --git a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard index cc6e05bd3..80a92ee1d 100644 --- a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard +++ b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard @@ -289,18 +289,467 @@ - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + @@ -332,6 +781,9 @@ + + + @@ -341,6 +793,9 @@ + + + diff --git a/iOS/Baseball/Baseball/ScoresViewController.swift b/iOS/Baseball/Baseball/ScoresViewController.swift new file mode 100644 index 000000000..419f0e413 --- /dev/null +++ b/iOS/Baseball/Baseball/ScoresViewController.swift @@ -0,0 +1,67 @@ +// +// ScoresViewController.swift +// Baseball +// +// Created by 심영민 on 2021/05/06. +// + +import UIKit + +class ScoresViewController: UIViewController { + + @IBOutlet weak var inningStackView: UIStackView! + @IBOutlet weak var awayStackView: UIStackView! + @IBOutlet weak var homeStackView: UIStackView! + @IBOutlet var inningLabel: [UILabel]! + @IBOutlet var homeScoreLabel: [UILabel]! + @IBOutlet var awayScoreLabel: [UILabel]! + + + @IBOutlet weak var view1: UIView! + @IBOutlet weak var view2: UIView! + @IBOutlet weak var view3: UIView! + + @IBOutlet var labels1: [UILabel]! + @IBOutlet var labels2: [UILabel]! + @IBOutlet var labels3: [UILabel]! + + + + + override func viewDidLoad() { + super.viewDidLoad() + configure() + configureHomeScore() + configureAwayScore() + } + + func configure() { + var xPos = 0 + for i in 1..<12 { + let label = UILabel() + label.text = "\(i)" + inningLabel.append(label) + inningStackView.addArrangedSubview(label) + } + } + + func configureHomeScore() { + awayScoreLabel[0].text = "Captin" + for i in 1..<12 { + let label = UILabel() + label.text = "\(i)" + awayScoreLabel.append(label) + awayStackView.addArrangedSubview(label) + } + } + + func configureAwayScore() { + homeScoreLabel[0].text = "Rockets" + for i in 20..<31 { + let label = UILabel() + label.text = "\(i)" + homeScoreLabel.append(label) + homeStackView.addArrangedSubview(label) + } + } +} From ea93a834c2c44bfc673a6264ce5bc0ab8ca08b74 Mon Sep 17 00:00:00 2001 From: Sonjh1306 Date: Thu, 6 May 2021 15:12:05 +0900 Subject: [PATCH 6/6] [#2] feat: Create Score Screen MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 상세 스코어 페이지를 구현 --- .../Baseball/Base.lproj/Main.storyboard | 336 +++++++++++------- .../Baseball/ScoresViewController.swift | 55 +-- 2 files changed, 203 insertions(+), 188 deletions(-) diff --git a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard index 80a92ee1d..1074f68ae 100644 --- a/iOS/Baseball/Baseball/Base.lproj/Main.storyboard +++ b/iOS/Baseball/Baseball/Base.lproj/Main.storyboard @@ -1,8 +1,8 @@ - + - + @@ -249,7 +249,7 @@ - + @@ -356,14 +356,14 @@ - - + + - + + + + + - + - - - + - - - - + + + + + - - + + + - + + + + + - - + + - + - + + - + - - - + + - - - - + + + + + - + + + - - - - - + + + + + - + - - + - + + + - - + + + + + - - - + + + + - - + + - + - - + + @@ -726,25 +742,75 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -781,9 +847,6 @@ - - - @@ -793,9 +856,6 @@ - - - diff --git a/iOS/Baseball/Baseball/ScoresViewController.swift b/iOS/Baseball/Baseball/ScoresViewController.swift index 419f0e413..7a78e3978 100644 --- a/iOS/Baseball/Baseball/ScoresViewController.swift +++ b/iOS/Baseball/Baseball/ScoresViewController.swift @@ -8,60 +8,15 @@ import UIKit class ScoresViewController: UIViewController { - - @IBOutlet weak var inningStackView: UIStackView! - @IBOutlet weak var awayStackView: UIStackView! - @IBOutlet weak var homeStackView: UIStackView! - @IBOutlet var inningLabel: [UILabel]! - @IBOutlet var homeScoreLabel: [UILabel]! - @IBOutlet var awayScoreLabel: [UILabel]! - - - @IBOutlet weak var view1: UIView! - @IBOutlet weak var view2: UIView! - @IBOutlet weak var view3: UIView! - - @IBOutlet var labels1: [UILabel]! - @IBOutlet var labels2: [UILabel]! - @IBOutlet var labels3: [UILabel]! - + @IBOutlet var awayScoreLabel: [UILabel]! + @IBOutlet var homeScoreLabel: [UILabel]! override func viewDidLoad() { super.viewDidLoad() - configure() - configureHomeScore() - configureAwayScore() - } - - func configure() { - var xPos = 0 - for i in 1..<12 { - let label = UILabel() - label.text = "\(i)" - inningLabel.append(label) - inningStackView.addArrangedSubview(label) - } - } - - func configureHomeScore() { - awayScoreLabel[0].text = "Captin" - for i in 1..<12 { - let label = UILabel() - label.text = "\(i)" - awayScoreLabel.append(label) - awayStackView.addArrangedSubview(label) - } - } - - func configureAwayScore() { - homeScoreLabel[0].text = "Rockets" - for i in 20..<31 { - let label = UILabel() - label.text = "\(i)" - homeScoreLabel.append(label) - homeStackView.addArrangedSubview(label) - } + } + + }