From fca0927a754b4d9a48e717273f35250e2a66245c Mon Sep 17 00:00:00 2001 From: coderZsq Date: Fri, 11 Oct 2019 14:24:20 +0800 Subject: [PATCH] add --- .../SQCleanBulk.xcodeproj/project.pbxproj | 375 ------------------ .../contents.xcworkspacedata | 7 - .../xcshareddata/IDEWorkspaceChecks.plist | 8 - SQCleanBulk/SQCleanBulk/AppDelegate.h | 20 - SQCleanBulk/SQCleanBulk/AppDelegate.m | 86 ---- .../AppIcon.appiconset/Contents.json | 98 ----- .../SQCleanBulk/Assets.xcassets/Contents.json | 6 - .../muscle.imageset/Contents.json | 22 - ...350\202\211\345\212\233\351\207\217-1.png" | Bin 4734 -> 0 bytes ...4\350\202\211\345\212\233\351\207\217.png" | Bin 4734 -> 0 bytes .../Base.lproj/LaunchScreen.storyboard | 25 -- .../SQCleanBulk/Base.lproj/Main.storyboard | 141 ------- SQCleanBulk/SQCleanBulk/Info.plist | 64 --- .../.xccurrentversion | 8 - .../SQCleanBulk.xcdatamodel/contents | 4 - .../SQCleanBulk/SQNumberPadHandleView.h | 22 - .../SQCleanBulk/SQNumberPadHandleView.m | 17 - .../SQCleanBulk/SQNumberPadHandleView.xib | 53 --- SQCleanBulk/SQCleanBulk/SceneDelegate.h | 16 - SQCleanBulk/SQCleanBulk/SceneDelegate.m | 54 --- SQCleanBulk/SQCleanBulk/ViewController.h | 15 - SQCleanBulk/SQCleanBulk/ViewController.m | 92 ----- SQCleanBulk/SQCleanBulk/main.m | 19 - 23 files changed, 1152 deletions(-) delete mode 100644 SQCleanBulk/SQCleanBulk.xcodeproj/project.pbxproj delete mode 100644 SQCleanBulk/SQCleanBulk.xcodeproj/project.xcworkspace/contents.xcworkspacedata delete mode 100644 SQCleanBulk/SQCleanBulk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist delete mode 100644 SQCleanBulk/SQCleanBulk/AppDelegate.h delete mode 100644 SQCleanBulk/SQCleanBulk/AppDelegate.m delete mode 100644 SQCleanBulk/SQCleanBulk/Assets.xcassets/AppIcon.appiconset/Contents.json delete mode 100644 SQCleanBulk/SQCleanBulk/Assets.xcassets/Contents.json delete mode 100644 SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/Contents.json delete mode 100644 "SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/\350\202\214\350\202\211\345\212\233\351\207\217-1.png" delete mode 100644 "SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/\350\202\214\350\202\211\345\212\233\351\207\217.png" delete mode 100644 SQCleanBulk/SQCleanBulk/Base.lproj/LaunchScreen.storyboard delete mode 100644 SQCleanBulk/SQCleanBulk/Base.lproj/Main.storyboard delete mode 100644 SQCleanBulk/SQCleanBulk/Info.plist delete mode 100644 SQCleanBulk/SQCleanBulk/SQCleanBulk.xcdatamodeld/.xccurrentversion delete mode 100644 SQCleanBulk/SQCleanBulk/SQCleanBulk.xcdatamodeld/SQCleanBulk.xcdatamodel/contents delete mode 100644 SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.h delete mode 100644 SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.m delete mode 100644 SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.xib delete mode 100644 SQCleanBulk/SQCleanBulk/SceneDelegate.h delete mode 100644 SQCleanBulk/SQCleanBulk/SceneDelegate.m delete mode 100644 SQCleanBulk/SQCleanBulk/ViewController.h delete mode 100644 SQCleanBulk/SQCleanBulk/ViewController.m delete mode 100644 SQCleanBulk/SQCleanBulk/main.m diff --git a/SQCleanBulk/SQCleanBulk.xcodeproj/project.pbxproj b/SQCleanBulk/SQCleanBulk.xcodeproj/project.pbxproj deleted file mode 100644 index 55ed022c..00000000 --- a/SQCleanBulk/SQCleanBulk.xcodeproj/project.pbxproj +++ /dev/null @@ -1,375 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 50; - objects = { - -/* Begin PBXBuildFile section */ - 14AE5FC3234F04310091FF67 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 14AE5FC2234F04310091FF67 /* AppDelegate.m */; }; - 14AE5FC6234F04310091FF67 /* SceneDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 14AE5FC5234F04310091FF67 /* SceneDelegate.m */; }; - 14AE5FC9234F04310091FF67 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 14AE5FC8234F04310091FF67 /* ViewController.m */; }; - 14AE5FCC234F04310091FF67 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 14AE5FCA234F04310091FF67 /* Main.storyboard */; }; - 14AE5FCF234F04310091FF67 /* SQCleanBulk.xcdatamodeld in Sources */ = {isa = PBXBuildFile; fileRef = 14AE5FCD234F04310091FF67 /* SQCleanBulk.xcdatamodeld */; }; - 14AE5FD1234F04320091FF67 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 14AE5FD0234F04320091FF67 /* Assets.xcassets */; }; - 14AE5FD4234F04320091FF67 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 14AE5FD2234F04320091FF67 /* LaunchScreen.storyboard */; }; - 14AE5FD7234F04320091FF67 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 14AE5FD6234F04320091FF67 /* main.m */; }; - 14AE5FE1234F26C30091FF67 /* SQNumberPadHandleView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 14AE5FE0234F26C30091FF67 /* SQNumberPadHandleView.xib */; }; - 14AE5FE4234F274D0091FF67 /* SQNumberPadHandleView.m in Sources */ = {isa = PBXBuildFile; fileRef = 14AE5FE3234F274D0091FF67 /* SQNumberPadHandleView.m */; }; -/* End PBXBuildFile section */ - -/* Begin PBXFileReference section */ - 14AE5FBE234F04310091FF67 /* SQCleanBulk.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SQCleanBulk.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 14AE5FC1234F04310091FF67 /* AppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - 14AE5FC2234F04310091FF67 /* AppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 14AE5FC4234F04310091FF67 /* SceneDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SceneDelegate.h; sourceTree = ""; }; - 14AE5FC5234F04310091FF67 /* SceneDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SceneDelegate.m; sourceTree = ""; }; - 14AE5FC7234F04310091FF67 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; - 14AE5FC8234F04310091FF67 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = ""; }; - 14AE5FCB234F04310091FF67 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 14AE5FCE234F04310091FF67 /* SQCleanBulk.xcdatamodel */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcdatamodel; path = SQCleanBulk.xcdatamodel; sourceTree = ""; }; - 14AE5FD0234F04320091FF67 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 14AE5FD3234F04320091FF67 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 14AE5FD5234F04320091FF67 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 14AE5FD6234F04320091FF67 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - 14AE5FE0234F26C30091FF67 /* SQNumberPadHandleView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SQNumberPadHandleView.xib; sourceTree = ""; }; - 14AE5FE2234F274D0091FF67 /* SQNumberPadHandleView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SQNumberPadHandleView.h; sourceTree = ""; }; - 14AE5FE3234F274D0091FF67 /* SQNumberPadHandleView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SQNumberPadHandleView.m; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 14AE5FBB234F04310091FF67 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 14AE5FB5234F04310091FF67 = { - isa = PBXGroup; - children = ( - 14AE5FC0234F04310091FF67 /* SQCleanBulk */, - 14AE5FBF234F04310091FF67 /* Products */, - ); - sourceTree = ""; - }; - 14AE5FBF234F04310091FF67 /* Products */ = { - isa = PBXGroup; - children = ( - 14AE5FBE234F04310091FF67 /* SQCleanBulk.app */, - ); - name = Products; - sourceTree = ""; - }; - 14AE5FC0234F04310091FF67 /* SQCleanBulk */ = { - isa = PBXGroup; - children = ( - 14AE5FC1234F04310091FF67 /* AppDelegate.h */, - 14AE5FC2234F04310091FF67 /* AppDelegate.m */, - 14AE5FC4234F04310091FF67 /* SceneDelegate.h */, - 14AE5FC5234F04310091FF67 /* SceneDelegate.m */, - 14AE5FC7234F04310091FF67 /* ViewController.h */, - 14AE5FC8234F04310091FF67 /* ViewController.m */, - 14AE5FCA234F04310091FF67 /* Main.storyboard */, - 14AE5FE2234F274D0091FF67 /* SQNumberPadHandleView.h */, - 14AE5FE3234F274D0091FF67 /* SQNumberPadHandleView.m */, - 14AE5FE0234F26C30091FF67 /* SQNumberPadHandleView.xib */, - 14AE5FD0234F04320091FF67 /* Assets.xcassets */, - 14AE5FD2234F04320091FF67 /* LaunchScreen.storyboard */, - 14AE5FD5234F04320091FF67 /* Info.plist */, - 14AE5FD6234F04320091FF67 /* main.m */, - 14AE5FCD234F04310091FF67 /* SQCleanBulk.xcdatamodeld */, - ); - path = SQCleanBulk; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 14AE5FBD234F04310091FF67 /* SQCleanBulk */ = { - isa = PBXNativeTarget; - buildConfigurationList = 14AE5FDA234F04320091FF67 /* Build configuration list for PBXNativeTarget "SQCleanBulk" */; - buildPhases = ( - 14AE5FBA234F04310091FF67 /* Sources */, - 14AE5FBB234F04310091FF67 /* Frameworks */, - 14AE5FBC234F04310091FF67 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = SQCleanBulk; - productName = SQCleanBulk; - productReference = 14AE5FBE234F04310091FF67 /* SQCleanBulk.app */; - productType = "com.apple.product-type.application"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 14AE5FB6234F04310091FF67 /* Project object */ = { - isa = PBXProject; - attributes = { - LastUpgradeCheck = 1100; - ORGANIZATIONNAME = "朱双泉"; - TargetAttributes = { - 14AE5FBD234F04310091FF67 = { - CreatedOnToolsVersion = 11.0; - }; - }; - }; - buildConfigurationList = 14AE5FB9234F04310091FF67 /* Build configuration list for PBXProject "SQCleanBulk" */; - compatibilityVersion = "Xcode 9.3"; - developmentRegion = en; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 14AE5FB5234F04310091FF67; - productRefGroup = 14AE5FBF234F04310091FF67 /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 14AE5FBD234F04310091FF67 /* SQCleanBulk */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 14AE5FBC234F04310091FF67 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 14AE5FD4234F04320091FF67 /* LaunchScreen.storyboard in Resources */, - 14AE5FD1234F04320091FF67 /* Assets.xcassets in Resources */, - 14AE5FCC234F04310091FF67 /* Main.storyboard in Resources */, - 14AE5FE1234F26C30091FF67 /* SQNumberPadHandleView.xib in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 14AE5FBA234F04310091FF67 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 14AE5FD7234F04320091FF67 /* main.m in Sources */, - 14AE5FC9234F04310091FF67 /* ViewController.m in Sources */, - 14AE5FCF234F04310091FF67 /* SQCleanBulk.xcdatamodeld in Sources */, - 14AE5FE4234F274D0091FF67 /* SQNumberPadHandleView.m in Sources */, - 14AE5FC3234F04310091FF67 /* AppDelegate.m in Sources */, - 14AE5FC6234F04310091FF67 /* SceneDelegate.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXVariantGroup section */ - 14AE5FCA234F04310091FF67 /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 14AE5FCB234F04310091FF67 /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 14AE5FD2234F04320091FF67 /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 14AE5FD3234F04320091FF67 /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 14AE5FD8234F04320091FF67 /* 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_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 = 13.0; - MTL_ENABLE_DEBUG_INFO = INCLUDE_SOURCE; - MTL_FAST_MATH = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - }; - name = Debug; - }; - 14AE5FD9234F04320091FF67 /* 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_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 = 13.0; - MTL_ENABLE_DEBUG_INFO = NO; - MTL_FAST_MATH = YES; - SDKROOT = iphoneos; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 14AE5FDB234F04320091FF67 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = NGPFU6GT2A; - INFOPLIST_FILE = SQCleanBulk/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = coderZsq.SQCleanBulk; - PRODUCT_NAME = "$(TARGET_NAME)"; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 14AE5FDC234F04320091FF67 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = NGPFU6GT2A; - INFOPLIST_FILE = SQCleanBulk/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 13.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = coderZsq.SQCleanBulk; - PRODUCT_NAME = "$(TARGET_NAME)"; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 14AE5FB9234F04310091FF67 /* Build configuration list for PBXProject "SQCleanBulk" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 14AE5FD8234F04320091FF67 /* Debug */, - 14AE5FD9234F04320091FF67 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 14AE5FDA234F04320091FF67 /* Build configuration list for PBXNativeTarget "SQCleanBulk" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 14AE5FDB234F04320091FF67 /* Debug */, - 14AE5FDC234F04320091FF67 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - -/* Begin XCVersionGroup section */ - 14AE5FCD234F04310091FF67 /* SQCleanBulk.xcdatamodeld */ = { - isa = XCVersionGroup; - children = ( - 14AE5FCE234F04310091FF67 /* SQCleanBulk.xcdatamodel */, - ); - currentVersion = 14AE5FCE234F04310091FF67 /* SQCleanBulk.xcdatamodel */; - path = SQCleanBulk.xcdatamodeld; - sourceTree = ""; - versionGroupType = wrapper.xcdatamodel; - }; -/* End XCVersionGroup section */ - }; - rootObject = 14AE5FB6234F04310091FF67 /* Project object */; -} diff --git a/SQCleanBulk/SQCleanBulk.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/SQCleanBulk/SQCleanBulk.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 440509bf..00000000 --- a/SQCleanBulk/SQCleanBulk.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/SQCleanBulk/SQCleanBulk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/SQCleanBulk/SQCleanBulk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d98100..00000000 --- a/SQCleanBulk/SQCleanBulk.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/SQCleanBulk/SQCleanBulk/AppDelegate.h b/SQCleanBulk/SQCleanBulk/AppDelegate.h deleted file mode 100644 index 8d58f953..00000000 --- a/SQCleanBulk/SQCleanBulk/AppDelegate.h +++ /dev/null @@ -1,20 +0,0 @@ -// -// AppDelegate.h -// SQCleanBulk -// -// Created by 朱双泉 on 2019/10/10. -// Copyright © 2019 朱双泉. All rights reserved. -// - -#import -#import - -@interface AppDelegate : UIResponder - -@property (readonly, strong) NSPersistentCloudKitContainer *persistentContainer; - -- (void)saveContext; - - -@end - diff --git a/SQCleanBulk/SQCleanBulk/AppDelegate.m b/SQCleanBulk/SQCleanBulk/AppDelegate.m deleted file mode 100644 index 22a00882..00000000 --- a/SQCleanBulk/SQCleanBulk/AppDelegate.m +++ /dev/null @@ -1,86 +0,0 @@ -// -// AppDelegate.m -// SQCleanBulk -// -// Created by 朱双泉 on 2019/10/10. -// Copyright © 2019 朱双泉. All rights reserved. -// - -#import "AppDelegate.h" - -@interface AppDelegate () - -@end - -@implementation AppDelegate - - -- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - // Override point for customization after application launch. - return YES; -} - - -#pragma mark - UISceneSession lifecycle - - -- (UISceneConfiguration *)application:(UIApplication *)application configurationForConnectingSceneSession:(UISceneSession *)connectingSceneSession options:(UISceneConnectionOptions *)options { - // Called when a new scene session is being created. - // Use this method to select a configuration to create the new scene with. - return [[UISceneConfiguration alloc] initWithName:@"Default Configuration" sessionRole:connectingSceneSession.role]; -} - - -- (void)application:(UIApplication *)application didDiscardSceneSessions:(NSSet *)sceneSessions { - // Called when the user discards a scene session. - // If any sessions were discarded while the application was not running, this will be called shortly after application:didFinishLaunchingWithOptions. - // Use this method to release any resources that were specific to the discarded scenes, as they will not return. -} - - -#pragma mark - Core Data stack - -@synthesize persistentContainer = _persistentContainer; - -- (NSPersistentCloudKitContainer *)persistentContainer { - // The persistent container for the application. This implementation creates and returns a container, having loaded the store for the application to it. - @synchronized (self) { - if (_persistentContainer == nil) { - _persistentContainer = [[NSPersistentCloudKitContainer alloc] initWithName:@"SQCleanBulk"]; - [_persistentContainer loadPersistentStoresWithCompletionHandler:^(NSPersistentStoreDescription *storeDescription, NSError *error) { - if (error != nil) { - // Replace this implementation with code to handle the error appropriately. - // abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. - - /* - Typical reasons for an error here include: - * The parent directory does not exist, cannot be created, or disallows writing. - * The persistent store is not accessible, due to permissions or data protection when the device is locked. - * The device is out of space. - * The store could not be migrated to the current model version. - Check the error message to determine what the actual problem was. - */ - NSLog(@"Unresolved error %@, %@", error, error.userInfo); - abort(); - } - }]; - } - } - - return _persistentContainer; -} - -#pragma mark - Core Data Saving support - -- (void)saveContext { - NSManagedObjectContext *context = self.persistentContainer.viewContext; - NSError *error = nil; - if ([context hasChanges] && ![context save:&error]) { - // Replace this implementation with code to handle the error appropriately. - // abort() causes the application to generate a crash log and terminate. You should not use this function in a shipping application, although it may be useful during development. - NSLog(@"Unresolved error %@, %@", error, error.userInfo); - abort(); - } -} - -@end diff --git a/SQCleanBulk/SQCleanBulk/Assets.xcassets/AppIcon.appiconset/Contents.json b/SQCleanBulk/SQCleanBulk/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index d8db8d65..00000000 --- a/SQCleanBulk/SQCleanBulk/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "83.5x83.5", - "scale" : "2x" - }, - { - "idiom" : "ios-marketing", - "size" : "1024x1024", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/SQCleanBulk/SQCleanBulk/Assets.xcassets/Contents.json b/SQCleanBulk/SQCleanBulk/Assets.xcassets/Contents.json deleted file mode 100644 index da4a164c..00000000 --- a/SQCleanBulk/SQCleanBulk/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/Contents.json b/SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/Contents.json deleted file mode 100644 index afa10f32..00000000 --- a/SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/Contents.json +++ /dev/null @@ -1,22 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "scale" : "1x" - }, - { - "idiom" : "universal", - "filename" : "肌肉力量.png", - "scale" : "2x" - }, - { - "idiom" : "universal", - "filename" : "肌肉力量-1.png", - "scale" : "3x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git "a/SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/\350\202\214\350\202\211\345\212\233\351\207\217-1.png" "b/SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/\350\202\214\350\202\211\345\212\233\351\207\217-1.png" deleted file mode 100644 index 577b7f3c55c559b98f46d9f78b2fb4835bdc733a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4734 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 aC1U!U9lZM$WH(z^0*1O5bV{|H!u|v7CpRbn diff --git "a/SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/\350\202\214\350\202\211\345\212\233\351\207\217.png" "b/SQCleanBulk/SQCleanBulk/Assets.xcassets/muscle.imageset/\350\202\214\350\202\211\345\212\233\351\207\217.png" deleted file mode 100644 index 577b7f3c55c559b98f46d9f78b2fb4835bdc733a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4734 zcmeHL`8U+x|G%%7!7SO+C=rnoq9)2Rne1z%EFrX5O9)w_nL&{(l`Xq?TS}NhWF0N^ z&Q1mi^R{Hq-dKkD%=>)L=O6g~`u(1J?z#6o?mf@to_p`(-p6C}3;I0h184vMkD-B% z1ppAc3jrh-yRpApDadmu1xu{2&Ct zLP7)}qjF9+62K%rg41;vN&VbhIL%K0OAyk;1VAqaHuj3aNN^62AEP9IkZ5+UHh`$y z|5uzE$fgdmEQ|uosz0S?tY%lE5PCzYyRL7#Hb`f?$vU&9efEz*c{UwF<*}7DYBw|%2>r!Ssl5-Z)4zu zhLp-XEsQh^6W4030-sxKk!b{ljL*H{)Fs%-Wt0u~c?q08mqP;_4;7{bU47wCXu`}K zE6rl--AP@4)aesB%Mgsv5)iQfMhPrN;`0K=AM_sn-@0jjuLVRdfHsr7?b$^Jauywu z>APF2KlT@jT#0xj2yne?SzJ@WT>dC&xbwbCScN1df~v%Jx-~mDw|K7A4NRv2p z6tzbZ@XE2EKY1CeW*g#&Izgl&h?8SA{WA0I;Hy^yn`!9;HwbCI$v2Yk{&D1nkner9 z{6obU{-TvbRN}XJP}wC)eyTv~xD;yVxuG!?;x*S=$4%ac_=qB0nON1wh^T)Kil1o` zJC^YII{XrmBfn@l=~x>ZaPnz0->eB_b}1?LiSgP9N=FFr{N?`EY+~u8I#Md#>rGvx z06UKY@sh=O@d~4-<%nE6pQlWHL14K{Q{VohRNTSuR*4UaXC^cg5L!r5>den`o(p1< z5rT(`YX&+_d5AN;v12^KvgKm~abHOwC+0bVPqHK+$W z1vnkSqzz*8b&F=`<6~&zRe5&0ZfsOOt%gf5?B(ysHF@xC zo2AAzkJ@ILwQ3764rM-A?sQK(-gwWC*H<9M6^g1^o=Vbtt-ozyznZUEXUE0({+)PP zsv*v24=#W13iv+N6XI2&6yy6HF*^OAIqizQXg@!9L-0OQ6bEUZp?NX(n**=dka#G8 z;WG0vdwtphz$ZY@snM2$%*|^He8C|@X*9z0!mtBpPRj_*xApm+cO^HxzMKm3FZh;(aUsc$bToqp5?vLG32$-*}BJDj%`B zl+Aq|TNC_;I?XX!?}K;R8EAFO-EJ;svIII{b~Og(w|JEjm>ucbb~`a|=slf@n__Mz zWAE4F@<5lD*Mz4_fegiJqy3;(2}kNhP*H2#eqT!$c4khL8K&>HNV7UriM9fsy+tm2 z0W|3y_wA0eOWy6_((^JVa!ytdvN5dqQ3@?OZx3^3&MeSa;(yRHHsc>$me)1iGx>3F zIhrKjy!=!6@)7#G1$4f{UfrlrNgM|BlAka)nA!;?8+O|B{vDg+%8F}&_go<4wH)ya zZ)Hqzy+%fvllmJ^N!v}-R8GRLyIvBVmC?Ugx^vapceAd7tf`E}tEZ*-GNhFTGGi6q z%s)_}7K8Z@xhA#Mk5tD?9%4uL6{aqHxaHfK+h@|c?o@6K4XkRA`12~2@$ancUG}XH zythRre;%(%e+=rBU*1Y`7<0yFox~~Zs`_IcE7E9iL3bZSAw0Yz{9?_prnCt>6(( zC$CnuhT$=Ucu1xh-nYH>d$>Ya)t6B;ggeGhVuU`lqDI$fW1LRPS7E|5Fod!r1$WYK zJsI{az>kDv{5zm4^V`}>;a+Vs-(m0sk^)aICUL8mo$?)WwQGGlxhjva zHNiqQG2bGAl0r4rX&zw@W)`H7)a#d7C~8(K+040f9geHiu+td*kVMNhC>hfMwCBp@ zBXEv04lv}17ng$V+h_EDi*@!c8` z%vteLHcestJaiI!{$C=lcyYwY?OvZqz_P9nIbhRIeJ9}SHTHb}(*sssy~D5|`SmuJ z$kLEU+?~bxZ>qJ8%CceLr8WGgT8Fguz+M%3@9xP_bi0Symp&>gc=~f+C_$e)uVSh3 z;`pBBbu9B3oU^m>qgGtOKJ*3h%#t212)()*%AA2tNY<{}A+ zcxY<=L$&+Y{>FgHfy9P6Q_ZTRV-X-R6@=<)4&FSVsi;u%;Afk7e&U0*1kby7$%N_x zV$lhL0Lh_>vwv-ON_Faf%Hf+6EI~2~%(g?oOY&#j5; ziHZ!n&=hL440zVTb+(0dQ;t->Yiv*Zg44dd8>K*crt&4E3r)|$W0STmWFEa@3UEq{ z(da`5XTz=7l+D!c*EhKOS}dG}pRi}Crt8eXF%*gE0r5p!XnxCAK`d?dexff8ESO6s zf`y(V|qB#M}EiOuFPRJy0U1MnNp;;m-MU|x|vP1=2olcUVhGs*=39xO_l}M zr5|+@;B@-S2W)<9+%dw5I!E^=5WU);q%pT6q;5prG?bx7f8g(4ZC#N^-reiM)vzDWzn8sgq zg-Jz6IThccI_I?sJItf1uAZmTRU-D1dU&Gly3#8;CadX+7DfyyvEjaG=bMmIzr9?U zi24X6GN3}q_$DOcsYZDi`gm0ve#uzuS8=m}azxFCgbN-o-bmYJ4XV|EE}jLk}MYV!UmaM($;wtoNu= zjz@SQpundVTS3x!=E*V$5vDp>xeh3acK!7(X5UP$FIG=(pmK7*E_lIHO%rN?m$f z4Pfu1`D@s7d}Jxub@5unWlC|=iTyF*%8CMMvy1Y~D^94xA8Q4EHvuPU{va8 zz6MH126}EWn@hsaEqc>i?sCK)2Q?ZxnDBG9abZWfC8%+YNqPs_ujex)E2@zza(AOO z1D8_#=JXf^rp8c>%%WIlIf$aS&(;7XDN2(p+@RG<%rTu+Ea7dILFr7UzERaJ!jOho4*`Is)5sl ztL>giUR*FHNi`f_$ua^)a)jb9(y+Wx>9m2mE}QF|yLwRs0qFPMH}eMSIt=ZOE3LIC zVU&q1&_xW$nRh=sp#LR`C`Ii>|2s?g_JoaaUjB-8L=f)vASda3)1wYcNsr@1&Zw!} z7q)EkK)`MOrf6Q_iWj2lSLF;R5U?3PQHyVV>!AKp51`#}H$E&~xDX(@zhLWL1qbYn z7;3YTqU5a(8yLwke@|sp>V;E;AOxLjx<}Bdl74~L=6Uyz2bK@sum5hvOM;^$DY!OR za%bnNPh++S?2Ta_hSl`x>2ZJdtIk-<=5wFk+)fjLs;Q%GS%=}i%(ckG9-;TER#P=< zS_miT6t4H5Tn`=!*$pbg#n&0g;>UiJ&PmWh*tBX;-o{^~Otl(&*cK;#=?l@smx!;X zc}V~{B<=(SrVZ)8+9-auunof$a#bq62OE2$$uKaj)7scDG^Ai%Wurf8Cyy_9>Xh-7f#fR2sg3hD#;8?_O+TkieP`S?cIx#I3hd*i*t)Uvg-Ym-bBTI zCddg_-n_z{F&ogij8qs=y&P<{cy&g<-a#K6f2w$cV{0YUUrMdrf36J*-JfnLh)a+- zW+1(m=gp7V+5TY_9bw!agz9h9H2KHU`yls42_PKneOW+wZZ6+(Bl^l&QOmza-zxq5 z!<@^rLho$U@A)n%hREUYdmcf;!blR<_$eRKPl5#eNEe>-FKGd2={jl!BJ;9!0p2b{ zLD+#U8#u_HKPS;e25=XoW~fEQKnUuSBVV}@YHTGyjd0Wu8OY8p@GWAKMBs*z1ny~R z6r{+O5EPRo4)ISD05lCUr6uVP0ZjiQIKcsnv2BXwBuFFb*aqrs!a@i+9MJy<^}k=K aC1U!U9lZM$WH(z^0*1O5bV{|H!u|v7CpRbn diff --git a/SQCleanBulk/SQCleanBulk/Base.lproj/LaunchScreen.storyboard b/SQCleanBulk/SQCleanBulk/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index 865e9329..00000000 --- a/SQCleanBulk/SQCleanBulk/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,25 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/SQCleanBulk/SQCleanBulk/Base.lproj/Main.storyboard b/SQCleanBulk/SQCleanBulk/Base.lproj/Main.storyboard deleted file mode 100644 index 57eca2e3..00000000 --- a/SQCleanBulk/SQCleanBulk/Base.lproj/Main.storyboard +++ /dev/null @@ -1,141 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/SQCleanBulk/SQCleanBulk/Info.plist b/SQCleanBulk/SQCleanBulk/Info.plist deleted file mode 100644 index 7b6037c2..00000000 --- a/SQCleanBulk/SQCleanBulk/Info.plist +++ /dev/null @@ -1,64 +0,0 @@ - - - - - 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 - SceneDelegate - UISceneStoryboardFile - Main - - - - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - - diff --git a/SQCleanBulk/SQCleanBulk/SQCleanBulk.xcdatamodeld/.xccurrentversion b/SQCleanBulk/SQCleanBulk/SQCleanBulk.xcdatamodeld/.xccurrentversion deleted file mode 100644 index 5d3ec783..00000000 --- a/SQCleanBulk/SQCleanBulk/SQCleanBulk.xcdatamodeld/.xccurrentversion +++ /dev/null @@ -1,8 +0,0 @@ - - - - - _XCCurrentVersionName - SQCleanBulk.xcdatamodel - - diff --git a/SQCleanBulk/SQCleanBulk/SQCleanBulk.xcdatamodeld/SQCleanBulk.xcdatamodel/contents b/SQCleanBulk/SQCleanBulk/SQCleanBulk.xcdatamodeld/SQCleanBulk.xcdatamodel/contents deleted file mode 100644 index 5d6f17b7..00000000 --- a/SQCleanBulk/SQCleanBulk/SQCleanBulk.xcdatamodeld/SQCleanBulk.xcdatamodel/contents +++ /dev/null @@ -1,4 +0,0 @@ - - - - \ No newline at end of file diff --git a/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.h b/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.h deleted file mode 100644 index 250b4e05..00000000 --- a/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.h +++ /dev/null @@ -1,22 +0,0 @@ -// -// SQNumberPadHandleView.h -// SQCleanBulk -// -// Created by 朱双泉 on 2019/10/10. -// Copyright © 2019 朱双泉. All rights reserved. -// - -#import - -NS_ASSUME_NONNULL_BEGIN - -@interface SQNumberPadHandleView : UIView - -@property (weak, nonatomic) IBOutlet UIButton *completeButton; -@property (weak, nonatomic) IBOutlet UIButton *cancelButton; - -+ (instancetype)handleView; - -@end - -NS_ASSUME_NONNULL_END diff --git a/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.m b/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.m deleted file mode 100644 index 62310b1c..00000000 --- a/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.m +++ /dev/null @@ -1,17 +0,0 @@ -// -// SQNumberPadHandleView.m -// SQCleanBulk -// -// Created by 朱双泉 on 2019/10/10. -// Copyright © 2019 朱双泉. All rights reserved. -// - -#import "SQNumberPadHandleView.h" - -@implementation SQNumberPadHandleView - -+ (instancetype)handleView { - return [[NSBundle bundleForClass:self.class] loadNibNamed:NSStringFromClass(self.class) owner:self options:nil].firstObject; -} - -@end diff --git a/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.xib b/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.xib deleted file mode 100644 index d841554a..00000000 --- a/SQCleanBulk/SQCleanBulk/SQNumberPadHandleView.xib +++ /dev/null @@ -1,53 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/SQCleanBulk/SQCleanBulk/SceneDelegate.h b/SQCleanBulk/SQCleanBulk/SceneDelegate.h deleted file mode 100644 index 75543fd0..00000000 --- a/SQCleanBulk/SQCleanBulk/SceneDelegate.h +++ /dev/null @@ -1,16 +0,0 @@ -// -// SceneDelegate.h -// SQCleanBulk -// -// Created by 朱双泉 on 2019/10/10. -// Copyright © 2019 朱双泉. All rights reserved. -// - -#import - -@interface SceneDelegate : UIResponder - -@property (strong, nonatomic) UIWindow * window; - -@end - diff --git a/SQCleanBulk/SQCleanBulk/SceneDelegate.m b/SQCleanBulk/SQCleanBulk/SceneDelegate.m deleted file mode 100644 index 0c5e4d07..00000000 --- a/SQCleanBulk/SQCleanBulk/SceneDelegate.m +++ /dev/null @@ -1,54 +0,0 @@ -#import "SceneDelegate.h" -#import "AppDelegate.h" - -@interface SceneDelegate () - -@end - -@implementation SceneDelegate - - -- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions { - // Use this method to optionally configure and attach the UIWindow `window` to the provided UIWindowScene `scene`. - // If using a storyboard, the `window` property will automatically be initialized and attached to the scene. - // This delegate does not imply the connecting scene or session are new (see `application:configurationForConnectingSceneSession` instead). -} - - -- (void)sceneDidDisconnect:(UIScene *)scene { - // Called as the scene is being released by the system. - // This occurs shortly after the scene enters the background, or when its session is discarded. - // Release any resources associated with this scene that can be re-created the next time the scene connects. - // The scene may re-connect later, as its session was not neccessarily discarded (see `application:didDiscardSceneSessions` instead). -} - - -- (void)sceneDidBecomeActive:(UIScene *)scene { - // Called when the scene has moved from an inactive state to an active state. - // Use this method to restart any tasks that were paused (or not yet started) when the scene was inactive. -} - - -- (void)sceneWillResignActive:(UIScene *)scene { - // Called when the scene will move from an active state to an inactive state. - // This may occur due to temporary interruptions (ex. an incoming phone call). -} - - -- (void)sceneWillEnterForeground:(UIScene *)scene { - // Called as the scene transitions from the background to the foreground. - // Use this method to undo the changes made on entering the background. -} - - -- (void)sceneDidEnterBackground:(UIScene *)scene { - // Called as the scene transitions from the foreground to the background. - // Use this method to save data, release shared resources, and store enough scene-specific state information - // to restore the scene back to its current state. - - // Save changes in the application's managed object context when the application transitions to the background. - [(AppDelegate *)UIApplication.sharedApplication.delegate saveContext]; -} - - -@end diff --git a/SQCleanBulk/SQCleanBulk/ViewController.h b/SQCleanBulk/SQCleanBulk/ViewController.h deleted file mode 100644 index 4cdad7b3..00000000 --- a/SQCleanBulk/SQCleanBulk/ViewController.h +++ /dev/null @@ -1,15 +0,0 @@ -// -// ViewController.h -// SQCleanBulk -// -// Created by 朱双泉 on 2019/10/10. -// Copyright © 2019 朱双泉. All rights reserved. -// - -#import - -@interface ViewController : UIViewController - - -@end - diff --git a/SQCleanBulk/SQCleanBulk/ViewController.m b/SQCleanBulk/SQCleanBulk/ViewController.m deleted file mode 100644 index e5a9f592..00000000 --- a/SQCleanBulk/SQCleanBulk/ViewController.m +++ /dev/null @@ -1,92 +0,0 @@ -// -// ViewController.m -// SQCleanBulk -// -// Created by 朱双泉 on 2019/10/10. -// Copyright © 2019 朱双泉. All rights reserved. -// - -#import "ViewController.h" -#import "SQNumberPadHandleView.h" - -@interface ViewController () -@property (weak, nonatomic) IBOutlet UIButton *startButton; -@property (strong, nonatomic) IBOutletCollection(UITextField) NSArray *textFields; -@property (weak, nonatomic) SQNumberPadHandleView *handleView; -@property (assign, nonatomic) NSInteger textFieldIndex; -@end - -@implementation ViewController - -- (void)viewDidLoad { - [super viewDidLoad]; - - SQNumberPadHandleView *handleView = [SQNumberPadHandleView handleView]; - handleView.frame = CGRectMake(0, self.view.bounds.size.height, self.view.bounds.size.width, 44); - [handleView.completeButton addTarget:self action:@selector(completeButtonEvents:) forControlEvents:(UIControlEventTouchUpInside)]; - [self.view addSubview:handleView]; - self.handleView = handleView; - self.textFieldIndex = 0; - for (UITextField *textField in self.textFields) { - CALayer *underline = [CALayer new]; - underline.frame = CGRectMake(10, textField.frame.size.height - 4, textField.frame.size.width - 20, 2.0); - underline.backgroundColor = [UIColor whiteColor].CGColor; - [textField.layer addSublayer:underline]; - [textField addTarget:self action:@selector(textFieldDidChange:) forControlEvents:(UIControlEventEditingChanged)]; - textField.delegate = self; - if (self.textFieldIndex == 0) { - [textField becomeFirstResponder]; - self.textFieldIndex = -1; - } - } - self.startButton.layer.cornerRadius = self.startButton.bounds.size.width * 0.5; - self.startButton.layer.masksToBounds = YES; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillShow:) name:UIKeyboardWillShowNotification object:nil]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(keyboardWillHide:) name:UIKeyboardWillHideNotification object:nil]; -} - -- (void)textFieldDidBeginEditing:(UITextField *)textField { - self.textFieldIndex = [self.textFields indexOfObject:textField]; - NSLog(@"%li", self.textFieldIndex); -} - -- (void)textFieldDidChange:(UITextField *)textField { - if (textField.text.length > 2) { - textField.text = [textField.text substringToIndex:2]; - } -} - -- (void)keyboardWillShow:(NSNotification *)notification { - CGRect keyboardFrame = [[[notification userInfo] objectForKey:UIKeyboardFrameEndUserInfoKey] CGRectValue]; - [UIView animateWithDuration:0.25 animations:^{ - CGRect frame = self.handleView.frame; - frame.origin.y = self.view.bounds.size.height - keyboardFrame.size.height - self.handleView.frame.size.height; - self.handleView.frame = frame; - }]; -} - -- (void)keyboardWillHide:(NSNotification *)notification { - [UIView animateWithDuration:0.25 animations:^{ - CGRect frame = self.handleView.frame; - frame.origin.y = self.view.bounds.size.height + 20; - self.handleView.frame = frame; - }]; -} - -- (void)completeButtonEvents:(UIButton *)sender { - NSLog(@"%li - %li", self.textFieldIndex + 1, self.textFields.count); - if (self.textFieldIndex + 1 == self.textFields.count) { - UITextField *textField = self.textFields.lastObject; - [textField resignFirstResponder]; - return; - } - while (true) { - UITextField *textField = self.textFields[++self.textFieldIndex]; - if (!textField.text.length) { - [textField becomeFirstResponder]; - break; - } - } -} - -@end diff --git a/SQCleanBulk/SQCleanBulk/main.m b/SQCleanBulk/SQCleanBulk/main.m deleted file mode 100644 index 62c6e239..00000000 --- a/SQCleanBulk/SQCleanBulk/main.m +++ /dev/null @@ -1,19 +0,0 @@ -// -// main.m -// SQCleanBulk -// -// Created by 朱双泉 on 2019/10/10. -// Copyright © 2019 朱双泉. All rights reserved. -// - -#import -#import "AppDelegate.h" - -int main(int argc, char * argv[]) { - NSString * appDelegateClassName; - @autoreleasepool { - // Setup code that might create autoreleased objects goes here. - appDelegateClassName = NSStringFromClass([AppDelegate class]); - } - return UIApplicationMain(argc, argv, nil, appDelegateClassName); -}