younger_times
2023-06-09 66e92e00d206dc19a4066b6f3f58f30e5c532646
完成部分UI
4个文件已修改
57个文件已添加
2374 ■■■■■ 已修改文件
WanPai.xcodeproj/project.pbxproj 104 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Bg/placeholder_1.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Bg/placeholder_1.imageset/placeholder_1@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Bg/placeholder_1.imageset/placeholder_1@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Btns/btn_add_1.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Btns/btn_add_1.imageset/btn_add_1@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Btns/btn_add_1.imageset/btn_add_1@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Btns/btn_delete.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Btns/btn_delete.imageset/btn_delete@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Btns/btn_delete.imageset/btn_delete@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_aes.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_aes.imageset/icon_aes@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_aes.imageset/icon_aes@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_des.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_des.imageset/icon_des@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_des.imageset/icon_des@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_down_arrow.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_down_arrow.imageset/icon_down_arrow@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_down_arrow.imageset/icon_down_arrow@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_down_arrow_s.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_down_arrow_s.imageset/icon_down_arrow_s@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_down_arrow_s.imageset/icon_down_arrow_s@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_local_mini.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_local_mini.imageset/icon_local_mini@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_local_mini.imageset/icon_local_mini@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_search.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_search.imageset/icon_search@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_search.imageset/icon_search@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_sort_normal.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_sort_normal.imageset/icon_sort_normal@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_sort_normal.imageset/icon_sort_normal@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_time.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_time.imageset/icon_time@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_time.imageset/icon_time@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_user_small.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_user_small.imageset/icon_user_small@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_user_small.imageset/icon_user_small@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_vip.imageset/Contents.json 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_vip.imageset/icon_vip@2x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Assets.xcassets/Icons/icon_vip.imageset/icon_vip@3x.png 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/TCell/CourseTCell.swift 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/TCell/CourseTCell.xib 184 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseDetailApplyVC.swift 90 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseDetailApplyVC.xib 456 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseDetailVC.swift 34 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseDetailVC.xib 265 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseListVC.swift 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseListVC.xib 197 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/VC/CourseVC.swift 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/View/CourseSubTypeView.swift 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Course/View/CourseSubTypeView.xib 55 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Home/VC/HomeVC.swift 11 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Home/VC/HomeVC.xib 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/CCell/Common_1_CCell.swift 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/CCell/Common_1_CCell.xib 52 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/TCell/Common_1_TCell.swift 17 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/TCell/Common_1_TCell.xib 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/TCell/StudentInfoTCell.swift 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/TCell/StudentInfoTCell.xib 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/View/StoresChooseView.swift 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai/Root/Other/View/StoresChooseView.xib 150 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WanPai.xcodeproj/project.pbxproj
@@ -8,6 +8,8 @@
/* Begin PBXBuildFile section */
        32D5FD87AB45829154125950 /* Pods_WanPai.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = F12BCB644B5E0392E2BFF8C7 /* Pods_WanPai.framework */; };
        8D44E4F72A331DF800E7010E /* CourseDetailApplyVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D44E4F52A331DF800E7010E /* CourseDetailApplyVC.swift */; };
        8D44E4F82A331DF800E7010E /* CourseDetailApplyVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D44E4F62A331DF800E7010E /* CourseDetailApplyVC.xib */; };
        8D4905A92A31A6EC00E38513 /* HomeCCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D4905A72A31A6EC00E38513 /* HomeCCell.swift */; };
        8D4905AA2A31A6EC00E38513 /* HomeCCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D4905A82A31A6EC00E38513 /* HomeCCell.xib */; };
        8D4905AD2A31AE7100E38513 /* JoinMemberIntroduceVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D4905AB2A31AE7100E38513 /* JoinMemberIntroduceVC.swift */; };
@@ -22,6 +24,12 @@
        8D630BF92A31801300F0B7A8 /* SearchVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D630BF72A31801300F0B7A8 /* SearchVC.xib */; };
        8D630BFB2A3180B000F0B7A8 /* BaseTabBarVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D630BFA2A3180B000F0B7A8 /* BaseTabBarVC.swift */; };
        8D667BF42A31C419005B02FB /* PaymentView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D667BF32A31C419005B02FB /* PaymentView.swift */; };
        8D6D6AF22A32D6F800DCA2C6 /* CourseListVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D6D6AF02A32D6F800DCA2C6 /* CourseListVC.swift */; };
        8D6D6AF32A32D6F800DCA2C6 /* CourseListVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D6D6AF12A32D6F800DCA2C6 /* CourseListVC.xib */; };
        8D7017892A3308DC00473C40 /* Common_1_TCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D7017872A3308DC00473C40 /* Common_1_TCell.swift */; };
        8D70178A2A3308DC00473C40 /* Common_1_TCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D7017882A3308DC00473C40 /* Common_1_TCell.xib */; };
        8D70178D2A330E5700473C40 /* CourseDetailVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D70178B2A330E5700473C40 /* CourseDetailVC.swift */; };
        8D70178E2A330E5700473C40 /* CourseDetailVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D70178C2A330E5700473C40 /* CourseDetailVC.xib */; };
        8D710F6D2A31897C0031E2D1 /* WaterFallFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D710F6C2A31897C0031E2D1 /* WaterFallFlowLayout.swift */; };
        8D8400D22A2F1430003AF6A2 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D8400D12A2F1430003AF6A2 /* AppDelegate.swift */; };
        8D8400D42A2F1430003AF6A2 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D8400D32A2F1430003AF6A2 /* SceneDelegate.swift */; };
@@ -30,16 +38,26 @@
        8D8400DE2A2F1432003AF6A2 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 8D8400DC2A2F1432003AF6A2 /* LaunchScreen.storyboard */; };
        8D8400E92A2F14A3003AF6A2 /* LoginVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D8400E72A2F14A3003AF6A2 /* LoginVC.swift */; };
        8D8400EA2A2F14A3003AF6A2 /* LoginVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D8400E82A2F14A3003AF6A2 /* LoginVC.xib */; };
        8D86DE852A3307A400A754EF /* CourseSubTypeView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D86DE842A3307A400A754EF /* CourseSubTypeView.swift */; };
        8D86DE872A3307B700A754EF /* CourseSubTypeView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D86DE862A3307B700A754EF /* CourseSubTypeView.xib */; };
        8D8DEDED2A31D82100F2C7FA /* PaymentResultVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D8DEDEB2A31D82100F2C7FA /* PaymentResultVC.swift */; };
        8D8DEDEE2A31D82100F2C7FA /* PaymentResultVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D8DEDEC2A31D82100F2C7FA /* PaymentResultVC.xib */; };
        8D8DEDF22A31DDC500F2C7FA /* CouponCCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D8DEDF02A31DDC500F2C7FA /* CouponCCell.swift */; };
        8D8DEDF32A31DDC500F2C7FA /* CouponCCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8D8DEDF12A31DDC500F2C7FA /* CouponCCell.xib */; };
        8DA51DF72A32BE270085F4BA /* Enums.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DA51DF62A32BE270085F4BA /* Enums.swift */; };
        8DA51DFA2A32C6C10085F4BA /* StoresChooseView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DA51DF92A32C6C10085F4BA /* StoresChooseView.swift */; };
        8DA51DFC2A32C6D00085F4BA /* StoresChooseView.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8DA51DFB2A32C6D00085F4BA /* StoresChooseView.xib */; };
        8DAEB54A2A30593C00814766 /* BaseNav.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DAEB5482A30593B00814766 /* BaseNav.swift */; };
        8DAEB54B2A30593C00814766 /* BaseVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DAEB5492A30593C00814766 /* BaseVC.swift */; };
        8DAEB54E2A305A0100814766 /* Colors.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DAEB54D2A305A0100814766 /* Colors.swift */; };
        8DAEB5502A305AEF00814766 /* Def.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DAEB54F2A305AEF00814766 /* Def.swift */; };
        8DAEB5522A305B2D00814766 /* Fronts.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DAEB5512A305B2D00814766 /* Fronts.swift */; };
        8DD239AE2A32FC5100700DEB /* CourseTCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DD239AC2A32FC5100700DEB /* CourseTCell.swift */; };
        8DD239AF2A32FC5100700DEB /* CourseTCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8DD239AD2A32FC5100700DEB /* CourseTCell.xib */; };
        8DF184402A3327EE0095687B /* Common_1_CCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF1843E2A3327EE0095687B /* Common_1_CCell.swift */; };
        8DF184412A3327EE0095687B /* Common_1_CCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8DF1843F2A3327EE0095687B /* Common_1_CCell.xib */; };
        8DF184442A332CCD0095687B /* StudentInfoTCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF184422A332CCD0095687B /* StudentInfoTCell.swift */; };
        8DF184452A332CCD0095687B /* StudentInfoTCell.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8DF184432A332CCD0095687B /* StudentInfoTCell.xib */; };
        8DFA9B762A316E9A00E99281 /* LoginRegOrForgotVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DFA9B742A316E9A00E99281 /* LoginRegOrForgotVC.swift */; };
        8DFA9B772A316E9A00E99281 /* LoginRegOrForgotVC.xib in Resources */ = {isa = PBXBuildFile; fileRef = 8DFA9B752A316E9A00E99281 /* LoginRegOrForgotVC.xib */; };
        8DFA9B852A3172BE00E99281 /* HomeVC.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DFA9B832A3172BE00E99281 /* HomeVC.swift */; };
@@ -53,6 +71,8 @@
/* Begin PBXFileReference section */
        0995405518BC2BFFEF866458 /* Pods-WanPai.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WanPai.release.xcconfig"; path = "Target Support Files/Pods-WanPai/Pods-WanPai.release.xcconfig"; sourceTree = "<group>"; };
        732365E0737559969E7CB12D /* Pods-WanPai.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-WanPai.debug.xcconfig"; path = "Target Support Files/Pods-WanPai/Pods-WanPai.debug.xcconfig"; sourceTree = "<group>"; };
        8D44E4F52A331DF800E7010E /* CourseDetailApplyVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseDetailApplyVC.swift; sourceTree = "<group>"; };
        8D44E4F62A331DF800E7010E /* CourseDetailApplyVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CourseDetailApplyVC.xib; sourceTree = "<group>"; };
        8D4905A72A31A6EC00E38513 /* HomeCCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeCCell.swift; sourceTree = "<group>"; };
        8D4905A82A31A6EC00E38513 /* HomeCCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = HomeCCell.xib; sourceTree = "<group>"; };
        8D4905AB2A31AE7100E38513 /* JoinMemberIntroduceVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = JoinMemberIntroduceVC.swift; sourceTree = "<group>"; };
@@ -67,6 +87,12 @@
        8D630BF72A31801300F0B7A8 /* SearchVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = SearchVC.xib; sourceTree = "<group>"; };
        8D630BFA2A3180B000F0B7A8 /* BaseTabBarVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BaseTabBarVC.swift; sourceTree = "<group>"; };
        8D667BF32A31C419005B02FB /* PaymentView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentView.swift; sourceTree = "<group>"; };
        8D6D6AF02A32D6F800DCA2C6 /* CourseListVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseListVC.swift; sourceTree = "<group>"; };
        8D6D6AF12A32D6F800DCA2C6 /* CourseListVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CourseListVC.xib; sourceTree = "<group>"; };
        8D7017872A3308DC00473C40 /* Common_1_TCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Common_1_TCell.swift; sourceTree = "<group>"; };
        8D7017882A3308DC00473C40 /* Common_1_TCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Common_1_TCell.xib; sourceTree = "<group>"; };
        8D70178B2A330E5700473C40 /* CourseDetailVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseDetailVC.swift; sourceTree = "<group>"; };
        8D70178C2A330E5700473C40 /* CourseDetailVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CourseDetailVC.xib; sourceTree = "<group>"; };
        8D710F6C2A31897C0031E2D1 /* WaterFallFlowLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = WaterFallFlowLayout.swift; sourceTree = "<group>"; };
        8D8400CE2A2F1430003AF6A2 /* WanPai.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = WanPai.app; sourceTree = BUILT_PRODUCTS_DIR; };
        8D8400D12A2F1430003AF6A2 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
@@ -77,16 +103,26 @@
        8D8400DF2A2F1432003AF6A2 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
        8D8400E72A2F14A3003AF6A2 /* LoginVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginVC.swift; sourceTree = "<group>"; };
        8D8400E82A2F14A3003AF6A2 /* LoginVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = LoginVC.xib; sourceTree = "<group>"; };
        8D86DE842A3307A400A754EF /* CourseSubTypeView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseSubTypeView.swift; sourceTree = "<group>"; };
        8D86DE862A3307B700A754EF /* CourseSubTypeView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CourseSubTypeView.xib; sourceTree = "<group>"; };
        8D8DEDEB2A31D82100F2C7FA /* PaymentResultVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PaymentResultVC.swift; sourceTree = "<group>"; };
        8D8DEDEC2A31D82100F2C7FA /* PaymentResultVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = PaymentResultVC.xib; sourceTree = "<group>"; };
        8D8DEDF02A31DDC500F2C7FA /* CouponCCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CouponCCell.swift; sourceTree = "<group>"; };
        8D8DEDF12A31DDC500F2C7FA /* CouponCCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CouponCCell.xib; sourceTree = "<group>"; };
        8DA51DF62A32BE270085F4BA /* Enums.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Enums.swift; sourceTree = "<group>"; };
        8DA51DF92A32C6C10085F4BA /* StoresChooseView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StoresChooseView.swift; sourceTree = "<group>"; };
        8DA51DFB2A32C6D00085F4BA /* StoresChooseView.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StoresChooseView.xib; sourceTree = "<group>"; };
        8DAEB5482A30593B00814766 /* BaseNav.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BaseNav.swift; sourceTree = "<group>"; };
        8DAEB5492A30593C00814766 /* BaseVC.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = BaseVC.swift; sourceTree = "<group>"; };
        8DAEB54D2A305A0100814766 /* Colors.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Colors.swift; sourceTree = "<group>"; };
        8DAEB54F2A305AEF00814766 /* Def.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Def.swift; sourceTree = "<group>"; };
        8DAEB5512A305B2D00814766 /* Fronts.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Fronts.swift; sourceTree = "<group>"; };
        8DD239AC2A32FC5100700DEB /* CourseTCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CourseTCell.swift; sourceTree = "<group>"; };
        8DD239AD2A32FC5100700DEB /* CourseTCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = CourseTCell.xib; sourceTree = "<group>"; };
        8DF1843E2A3327EE0095687B /* Common_1_CCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Common_1_CCell.swift; sourceTree = "<group>"; };
        8DF1843F2A3327EE0095687B /* Common_1_CCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Common_1_CCell.xib; sourceTree = "<group>"; };
        8DF184422A332CCD0095687B /* StudentInfoTCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StudentInfoTCell.swift; sourceTree = "<group>"; };
        8DF184432A332CCD0095687B /* StudentInfoTCell.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = StudentInfoTCell.xib; sourceTree = "<group>"; };
        8DFA9B742A316E9A00E99281 /* LoginRegOrForgotVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginRegOrForgotVC.swift; sourceTree = "<group>"; };
        8DFA9B752A316E9A00E99281 /* LoginRegOrForgotVC.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = LoginRegOrForgotVC.xib; sourceTree = "<group>"; };
        8DFA9B832A3172BE00E99281 /* HomeVC.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HomeVC.swift; sourceTree = "<group>"; };
@@ -157,6 +193,17 @@
            path = Layout;
            sourceTree = "<group>";
        };
        8D7017862A3308C100473C40 /* TCell */ = {
            isa = PBXGroup;
            children = (
                8D7017872A3308DC00473C40 /* Common_1_TCell.swift */,
                8D7017882A3308DC00473C40 /* Common_1_TCell.xib */,
                8DF184422A332CCD0095687B /* StudentInfoTCell.swift */,
                8DF184432A332CCD0095687B /* StudentInfoTCell.xib */,
            );
            path = TCell;
            sourceTree = "<group>";
        };
        8D8400C52A2F1430003AF6A2 = {
            isa = PBXGroup;
            children = (
@@ -211,9 +258,20 @@
            path = VC;
            sourceTree = "<group>";
        };
        8D86DE832A33077B00A754EF /* View */ = {
            isa = PBXGroup;
            children = (
                8D86DE842A3307A400A754EF /* CourseSubTypeView.swift */,
                8D86DE862A3307B700A754EF /* CourseSubTypeView.xib */,
            );
            path = View;
            sourceTree = "<group>";
        };
        8D8DEDE92A31D7F400F2C7FA /* Other */ = {
            isa = PBXGroup;
            children = (
                8D7017862A3308C100473C40 /* TCell */,
                8DA51DF82A32C6700085F4BA /* View */,
                8D8DEDEF2A31DDAA00F2C7FA /* CCell */,
                8D8DEDEA2A31D80B00F2C7FA /* VC */,
            );
@@ -234,8 +292,19 @@
            children = (
                8D8DEDF02A31DDC500F2C7FA /* CouponCCell.swift */,
                8D8DEDF12A31DDC500F2C7FA /* CouponCCell.xib */,
                8DF1843E2A3327EE0095687B /* Common_1_CCell.swift */,
                8DF1843F2A3327EE0095687B /* Common_1_CCell.xib */,
            );
            path = CCell;
            sourceTree = "<group>";
        };
        8DA51DF82A32C6700085F4BA /* View */ = {
            isa = PBXGroup;
            children = (
                8DA51DF92A32C6C10085F4BA /* StoresChooseView.swift */,
                8DA51DFB2A32C6D00085F4BA /* StoresChooseView.xib */,
            );
            path = View;
            sourceTree = "<group>";
        };
        8DAEB5472A30592800814766 /* Base */ = {
@@ -267,6 +336,15 @@
                8D5C15072A31885B00A8BCC9 /* View */,
            );
            path = Common;
            sourceTree = "<group>";
        };
        8DD239AB2A32FC2B00700DEB /* TCell */ = {
            isa = PBXGroup;
            children = (
                8DD239AC2A32FC5100700DEB /* CourseTCell.swift */,
                8DD239AD2A32FC5100700DEB /* CourseTCell.xib */,
            );
            path = TCell;
            sourceTree = "<group>";
        };
        8DFA9B782A31722300E99281 /* Root */ = {
@@ -305,6 +383,8 @@
        8DFA9B872A317D8B00E99281 /* Course */ = {
            isa = PBXGroup;
            children = (
                8D86DE832A33077B00A754EF /* View */,
                8DD239AB2A32FC2B00700DEB /* TCell */,
                8DFA9B882A317D9B00E99281 /* VC */,
            );
            path = Course;
@@ -315,6 +395,12 @@
            children = (
                8DFA9B892A317DAA00E99281 /* CourseVC.swift */,
                8DFA9B8A2A317DAA00E99281 /* CourseVC.xib */,
                8D6D6AF02A32D6F800DCA2C6 /* CourseListVC.swift */,
                8D6D6AF12A32D6F800DCA2C6 /* CourseListVC.xib */,
                8D70178B2A330E5700473C40 /* CourseDetailVC.swift */,
                8D70178C2A330E5700473C40 /* CourseDetailVC.xib */,
                8D44E4F52A331DF800E7010E /* CourseDetailApplyVC.swift */,
                8D44E4F62A331DF800E7010E /* CourseDetailApplyVC.xib */,
            );
            path = VC;
            sourceTree = "<group>";
@@ -414,21 +500,30 @@
            buildActionMask = 2147483647;
            files = (
                8DFA9B8C2A317DAA00E99281 /* CourseVC.xib in Resources */,
                8DD239AF2A32FC5100700DEB /* CourseTCell.xib in Resources */,
                8D8400DE2A2F1432003AF6A2 /* LaunchScreen.storyboard in Resources */,
                8DFA9B772A316E9A00E99281 /* LoginRegOrForgotVC.xib in Resources */,
                8DA51DFC2A32C6D00085F4BA /* StoresChooseView.xib in Resources */,
                8D70178A2A3308DC00473C40 /* Common_1_TCell.xib in Resources */,
                8D70178E2A330E5700473C40 /* CourseDetailVC.xib in Resources */,
                8D8DEDEE2A31D82100F2C7FA /* PaymentResultVC.xib in Resources */,
                8D86DE872A3307B700A754EF /* CourseSubTypeView.xib in Resources */,
                8D8400DB2A2F1432003AF6A2 /* Assets.xcassets in Resources */,
                8DFA9B862A3172BE00E99281 /* HomeVC.xib in Resources */,
                8DFA9B922A317DE900E99281 /* WelfareVC.xib in Resources */,
                8D8DEDF32A31DDC500F2C7FA /* CouponCCell.xib in Resources */,
                8D4905AE2A31AE7100E38513 /* JoinMemberIntroduceVC.xib in Resources */,
                8DF184452A332CCD0095687B /* StudentInfoTCell.xib in Resources */,
                8DF184412A3327EE0095687B /* Common_1_CCell.xib in Resources */,
                8D5C150C2A31885B00A8BCC9 /* CommonAlertView.xib in Resources */,
                8D5B80B72A31C4C700B86520 /* PaymentView.xib in Resources */,
                8D8400EA2A2F14A3003AF6A2 /* LoginVC.xib in Resources */,
                8D5C150D2A31885B00A8BCC9 /* AgreentView.xib in Resources */,
                8D630BF92A31801300F0B7A8 /* SearchVC.xib in Resources */,
                8D6D6AF32A32D6F800DCA2C6 /* CourseListVC.xib in Resources */,
                8D4905AA2A31A6EC00E38513 /* HomeCCell.xib in Resources */,
                8D8400D92A2F1430003AF6A2 /* Main.storyboard in Resources */,
                8D44E4F82A331DF800E7010E /* CourseDetailApplyVC.xib in Resources */,
            );
            runOnlyForDeploymentPostprocessing = 0;
        };
@@ -482,19 +577,27 @@
            buildActionMask = 2147483647;
            files = (
                8D4905AD2A31AE7100E38513 /* JoinMemberIntroduceVC.swift in Sources */,
                8DF184442A332CCD0095687B /* StudentInfoTCell.swift in Sources */,
                8DD239AE2A32FC5100700DEB /* CourseTCell.swift in Sources */,
                8D667BF42A31C419005B02FB /* PaymentView.swift in Sources */,
                8DFA9B762A316E9A00E99281 /* LoginRegOrForgotVC.swift in Sources */,
                8DFA9B8B2A317DAA00E99281 /* CourseVC.swift in Sources */,
                8DAEB54B2A30593C00814766 /* BaseVC.swift in Sources */,
                8DAEB54E2A305A0100814766 /* Colors.swift in Sources */,
                8D630BF82A31801300F0B7A8 /* SearchVC.swift in Sources */,
                8D44E4F72A331DF800E7010E /* CourseDetailApplyVC.swift in Sources */,
                8D6D6AF22A32D6F800DCA2C6 /* CourseListVC.swift in Sources */,
                8DF184402A3327EE0095687B /* Common_1_CCell.swift in Sources */,
                8DAEB54A2A30593C00814766 /* BaseNav.swift in Sources */,
                8D710F6D2A31897C0031E2D1 /* WaterFallFlowLayout.swift in Sources */,
                8DA51DFA2A32C6C10085F4BA /* StoresChooseView.swift in Sources */,
                8DAEB5522A305B2D00814766 /* Fronts.swift in Sources */,
                8D8DEDED2A31D82100F2C7FA /* PaymentResultVC.swift in Sources */,
                8D8400D22A2F1430003AF6A2 /* AppDelegate.swift in Sources */,
                8D8DEDF22A31DDC500F2C7FA /* CouponCCell.swift in Sources */,
                8D5C150E2A31885B00A8BCC9 /* CommonAlertView.swift in Sources */,
                8D7017892A3308DC00473C40 /* Common_1_TCell.swift in Sources */,
                8D70178D2A330E5700473C40 /* CourseDetailVC.swift in Sources */,
                8D5C150F2A31885B00A8BCC9 /* AgreentView.swift in Sources */,
                8D8400E92A2F14A3003AF6A2 /* LoginVC.swift in Sources */,
                8D4905A92A31A6EC00E38513 /* HomeCCell.swift in Sources */,
@@ -504,6 +607,7 @@
                8DAEB5502A305AEF00814766 /* Def.swift in Sources */,
                8D8400D42A2F1430003AF6A2 /* SceneDelegate.swift in Sources */,
                8DA51DF72A32BE270085F4BA /* Enums.swift in Sources */,
                8D86DE852A3307A400A754EF /* CourseSubTypeView.swift in Sources */,
                8D5C15062A31861D00A8BCC9 /* TapBtn.swift in Sources */,
            );
            runOnlyForDeploymentPostprocessing = 0;
WanPai/Assets.xcassets/Bg/placeholder_1.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "placeholder_1@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "placeholder_1@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Bg/placeholder_1.imageset/placeholder_1@2x.png
WanPai/Assets.xcassets/Bg/placeholder_1.imageset/placeholder_1@3x.png
WanPai/Assets.xcassets/Btns/btn_add_1.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "btn_add_1@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "btn_add_1@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Btns/btn_add_1.imageset/btn_add_1@2x.png
WanPai/Assets.xcassets/Btns/btn_add_1.imageset/btn_add_1@3x.png
WanPai/Assets.xcassets/Btns/btn_delete.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "btn_delete@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "btn_delete@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Btns/btn_delete.imageset/btn_delete@2x.png
WanPai/Assets.xcassets/Btns/btn_delete.imageset/btn_delete@3x.png
WanPai/Assets.xcassets/Icons/icon_aes.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_aes@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_aes@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_aes.imageset/icon_aes@2x.png
WanPai/Assets.xcassets/Icons/icon_aes.imageset/icon_aes@3x.png
WanPai/Assets.xcassets/Icons/icon_des.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_des@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_des@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_des.imageset/icon_des@2x.png
WanPai/Assets.xcassets/Icons/icon_des.imageset/icon_des@3x.png
WanPai/Assets.xcassets/Icons/icon_down_arrow.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_down_arrow@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_down_arrow@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_down_arrow.imageset/icon_down_arrow@2x.png
WanPai/Assets.xcassets/Icons/icon_down_arrow.imageset/icon_down_arrow@3x.png
WanPai/Assets.xcassets/Icons/icon_down_arrow_s.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_down_arrow_s@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_down_arrow_s@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_down_arrow_s.imageset/icon_down_arrow_s@2x.png
WanPai/Assets.xcassets/Icons/icon_down_arrow_s.imageset/icon_down_arrow_s@3x.png
WanPai/Assets.xcassets/Icons/icon_local_mini.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_local_mini@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_local_mini@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_local_mini.imageset/icon_local_mini@2x.png
WanPai/Assets.xcassets/Icons/icon_local_mini.imageset/icon_local_mini@3x.png
WanPai/Assets.xcassets/Icons/icon_search.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_search@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_search@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_search.imageset/icon_search@2x.png
WanPai/Assets.xcassets/Icons/icon_search.imageset/icon_search@3x.png
WanPai/Assets.xcassets/Icons/icon_sort_normal.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_sort_normal@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_sort_normal@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_sort_normal.imageset/icon_sort_normal@2x.png
WanPai/Assets.xcassets/Icons/icon_sort_normal.imageset/icon_sort_normal@3x.png
WanPai/Assets.xcassets/Icons/icon_time.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_time@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_time@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_time.imageset/icon_time@2x.png
WanPai/Assets.xcassets/Icons/icon_time.imageset/icon_time@3x.png
WanPai/Assets.xcassets/Icons/icon_user_small.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_user_small@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_user_small@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_user_small.imageset/icon_user_small@2x.png
WanPai/Assets.xcassets/Icons/icon_user_small.imageset/icon_user_small@3x.png
WanPai/Assets.xcassets/Icons/icon_vip.imageset/Contents.json
New file
@@ -0,0 +1,22 @@
{
  "images" : [
    {
      "idiom" : "universal",
      "scale" : "1x"
    },
    {
      "filename" : "icon_vip@2x.png",
      "idiom" : "universal",
      "scale" : "2x"
    },
    {
      "filename" : "icon_vip@3x.png",
      "idiom" : "universal",
      "scale" : "3x"
    }
  ],
  "info" : {
    "author" : "xcode",
    "version" : 1
  }
}
WanPai/Assets.xcassets/Icons/icon_vip.imageset/icon_vip@2x.png
WanPai/Assets.xcassets/Icons/icon_vip.imageset/icon_vip@3x.png
WanPai/Root/Course/TCell/CourseTCell.swift
New file
@@ -0,0 +1,18 @@
//
//  CourseTCell.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
class CourseTCell: UITableViewCell {
    override func awakeFromNib() {
        super.awakeFromNib()
        selectionStyle = .none
    }
}
WanPai/Root/Course/TCell/CourseTCell.xib
New file
@@ -0,0 +1,184 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="_CourseTCell" rowHeight="201" id="KGk-i7-Jjw" customClass="CourseTCell" customModule="WanPai" customModuleProvider="target">
            <rect key="frame" x="0.0" y="0.0" width="445" height="201"/>
            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
                <rect key="frame" x="0.0" y="0.0" width="445" height="201"/>
                <autoresizingMask key="autoresizingMask"/>
                <subviews>
                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="placeholder_1" translatesAutoresizingMaskIntoConstraints="NO" id="kG4-xU-j01">
                        <rect key="frame" x="14.000000000000007" y="21" width="118.66666666666669" height="158"/>
                        <constraints>
                            <constraint firstAttribute="width" secondItem="kG4-xU-j01" secondAttribute="height" multiplier="1:1.33" id="kZu-F8-aRD"/>
                        </constraints>
                        <userDefinedRuntimeAttributes>
                            <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                                <real key="value" value="9"/>
                            </userDefinedRuntimeAttribute>
                        </userDefinedRuntimeAttributes>
                    </imageView>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="KYY-Ie-Ipd">
                        <rect key="frame" x="142.66666666666666" y="20" width="292.33333333333337" height="22"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="22" id="09U-HJ-nDG"/>
                        </constraints>
                        <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                        <nil key="textColor"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="9" translatesAutoresizingMaskIntoConstraints="NO" id="eNH-LC-iLJ">
                        <rect key="frame" x="143.66666666666666" y="51" width="90.666666666666657" height="78"/>
                        <subviews>
                            <stackView opaque="NO" contentMode="scaleToFill" spacing="3" translatesAutoresizingMaskIntoConstraints="NO" id="Av5-eD-vOm">
                                <rect key="frame" x="0.0" y="0.0" width="90.666666666666671" height="20"/>
                                <subviews>
                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_time" translatesAutoresizingMaskIntoConstraints="NO" id="taH-Vl-eKa">
                                        <rect key="frame" x="0.0" y="0.0" width="16" height="20"/>
                                    </imageView>
                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="上课时间:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vOz-k7-E1C">
                                        <rect key="frame" x="19" y="0.0" width="71.666666666666671" height="20"/>
                                        <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                        <color key="textColor" red="0.45098039215686275" green="0.45098039215686275" blue="0.45098039215686275" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                        <nil key="highlightedColor"/>
                                    </label>
                                </subviews>
                                <constraints>
                                    <constraint firstAttribute="height" constant="20" id="4Vl-mU-RbG"/>
                                </constraints>
                            </stackView>
                            <stackView opaque="NO" contentMode="scaleToFill" spacing="3" translatesAutoresizingMaskIntoConstraints="NO" id="Q2n-xg-KUo">
                                <rect key="frame" x="0.0" y="29" width="90.666666666666671" height="20"/>
                                <subviews>
                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_user_small" translatesAutoresizingMaskIntoConstraints="NO" id="KHG-Ya-K8I">
                                        <rect key="frame" x="0.0" y="0.0" width="16" height="20"/>
                                        <constraints>
                                            <constraint firstAttribute="width" constant="16" id="Vz5-Rg-74J"/>
                                        </constraints>
                                    </imageView>
                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="已报名:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="s8o-AB-aTs">
                                        <rect key="frame" x="19" y="0.0" width="71.666666666666671" height="20"/>
                                        <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                        <color key="textColor" red="0.45098039220000002" green="0.45098039220000002" blue="0.45098039220000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                        <nil key="highlightedColor"/>
                                    </label>
                                </subviews>
                                <constraints>
                                    <constraint firstAttribute="height" constant="20" id="y0O-0A-EMz"/>
                                </constraints>
                            </stackView>
                            <stackView opaque="NO" contentMode="scaleToFill" spacing="3" translatesAutoresizingMaskIntoConstraints="NO" id="4j1-WG-XCo">
                                <rect key="frame" x="0.0" y="58" width="90.666666666666671" height="20"/>
                                <subviews>
                                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_vip" translatesAutoresizingMaskIntoConstraints="NO" id="fsf-xs-whp">
                                        <rect key="frame" x="0.0" y="0.0" width="16" height="20"/>
                                        <constraints>
                                            <constraint firstAttribute="width" constant="16" id="aq7-MQ-MM1"/>
                                        </constraints>
                                    </imageView>
                                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="会员价:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="iGs-ae-BBu">
                                        <rect key="frame" x="19" y="0.0" width="71.666666666666671" height="20"/>
                                        <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                        <color key="textColor" red="0.45098039220000002" green="0.45098039220000002" blue="0.45098039220000002" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                        <nil key="highlightedColor"/>
                                    </label>
                                </subviews>
                                <constraints>
                                    <constraint firstAttribute="height" constant="20" id="LPR-vw-oDw"/>
                                </constraints>
                            </stackView>
                        </subviews>
                    </stackView>
                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="tOW-TH-1JZ">
                        <rect key="frame" x="13" y="200.66666666666666" width="419" height="0.33333333333334281"/>
                        <color key="backgroundColor" red="0.59215686274509804" green="0.59215686274509804" blue="0.59215686274509804" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="0.5" id="UqP-R7-dtT"/>
                        </constraints>
                    </view>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥ 0" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="cfM-fa-irQ">
                        <rect key="frame" x="142.66666666666666" y="155" width="27.666666666666657" height="25"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="25" id="xWn-hk-QRE"/>
                        </constraints>
                        <fontDescription key="fontDescription" type="boldSystem" pointSize="18"/>
                        <color key="textColor" name="FE6E0D"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥ 0" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="46M-8z-ObJ">
                        <rect key="frame" x="177.33333333333334" y="159" width="22" height="17"/>
                        <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
                        <color key="textColor" red="0.77647058823529413" green="0.77647058823529413" blue="0.77647058823529413" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="qZP-3L-42h">
                        <rect key="frame" x="366" y="144.66666666666666" width="65" height="31"/>
                        <color key="backgroundColor" name="FE6E0D"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="31" id="QJh-lv-KCw"/>
                            <constraint firstAttribute="width" constant="65" id="a9I-aS-idx"/>
                        </constraints>
                        <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
                        <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                        <state key="normal" title="详情"/>
                        <userDefinedRuntimeAttributes>
                            <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
                            <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
                                <real key="value" value="2"/>
                            </userDefinedRuntimeAttribute>
                        </userDefinedRuntimeAttributes>
                    </button>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="0km" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ZKZ-AF-Nb9">
                        <rect key="frame" x="398" y="98.333333333333329" width="33" height="19.333333333333329"/>
                        <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                        <color key="textColor" red="0.23921568627450979" green="0.24313725490196078" blue="0.27058823529411763" alpha="0.68999999999999995" colorSpace="custom" customColorSpace="sRGB"/>
                        <nil key="highlightedColor"/>
                    </label>
                </subviews>
                <constraints>
                    <constraint firstAttribute="bottom" secondItem="tOW-TH-1JZ" secondAttribute="bottom" id="AhH-FA-O65"/>
                    <constraint firstItem="cfM-fa-irQ" firstAttribute="bottom" secondItem="kG4-xU-j01" secondAttribute="bottom" constant="1" id="Aj2-0h-o8x"/>
                    <constraint firstItem="qZP-3L-42h" firstAttribute="top" secondItem="ZKZ-AF-Nb9" secondAttribute="bottom" constant="27" id="F7y-XF-Iik"/>
                    <constraint firstItem="cfM-fa-irQ" firstAttribute="leading" secondItem="kG4-xU-j01" secondAttribute="trailing" constant="10" id="GNg-gn-eS5"/>
                    <constraint firstAttribute="trailing" secondItem="qZP-3L-42h" secondAttribute="trailing" constant="14" id="IRg-MS-A9h"/>
                    <constraint firstItem="ZKZ-AF-Nb9" firstAttribute="trailing" secondItem="qZP-3L-42h" secondAttribute="trailing" id="JMI-5p-c6U"/>
                    <constraint firstAttribute="trailing" secondItem="tOW-TH-1JZ" secondAttribute="trailing" constant="13" id="LC2-Dh-buQ"/>
                    <constraint firstAttribute="bottom" secondItem="kG4-xU-j01" secondAttribute="bottom" constant="22" id="RAw-7P-bMS"/>
                    <constraint firstItem="tOW-TH-1JZ" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="13" id="Wg5-kB-aPl"/>
                    <constraint firstItem="kG4-xU-j01" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="21" id="XXl-Bw-f18"/>
                    <constraint firstItem="46M-8z-ObJ" firstAttribute="centerY" secondItem="cfM-fa-irQ" secondAttribute="centerY" id="Z9F-4v-SgA"/>
                    <constraint firstItem="kG4-xU-j01" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="14" id="flf-H5-clI"/>
                    <constraint firstItem="46M-8z-ObJ" firstAttribute="leading" secondItem="cfM-fa-irQ" secondAttribute="trailing" constant="7" id="gRp-c2-A3j"/>
                    <constraint firstAttribute="trailing" secondItem="KYY-Ie-Ipd" secondAttribute="trailing" constant="10" id="j4S-2X-WRW"/>
                    <constraint firstItem="eNH-LC-iLJ" firstAttribute="top" secondItem="KYY-Ie-Ipd" secondAttribute="bottom" constant="9" id="oUV-0d-5qU"/>
                    <constraint firstItem="tOW-TH-1JZ" firstAttribute="top" secondItem="qZP-3L-42h" secondAttribute="bottom" constant="25" id="qP1-h8-Ypc"/>
                    <constraint firstItem="KYY-Ie-Ipd" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="20" id="qPf-Dj-Qzy"/>
                    <constraint firstItem="eNH-LC-iLJ" firstAttribute="leading" secondItem="kG4-xU-j01" secondAttribute="trailing" constant="11" id="rkh-6K-n2W"/>
                    <constraint firstItem="KYY-Ie-Ipd" firstAttribute="leading" secondItem="kG4-xU-j01" secondAttribute="trailing" constant="10" id="y3j-BM-1Oh"/>
                </constraints>
            </tableViewCellContentView>
            <viewLayoutGuide key="safeArea" id="njF-e1-oar"/>
            <point key="canvasLocation" x="135.1145038167939" y="75"/>
        </tableViewCell>
    </objects>
    <resources>
        <image name="icon_time" width="16" height="16"/>
        <image name="icon_user_small" width="14" height="14"/>
        <image name="icon_vip" width="12" height="12"/>
        <image name="placeholder_1" width="106" height="141"/>
        <namedColor name="FE6E0D">
            <color red="0.99599999189376831" green="0.4309999942779541" blue="0.050999999046325684" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </namedColor>
    </resources>
</document>
WanPai/Root/Course/VC/CourseDetailApplyVC.swift
New file
@@ -0,0 +1,90 @@
//
//  CourseDetailApplyVC.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
import JQTools
import QMUIKit
class CourseDetailApplyVC: BaseVC {
    @IBOutlet weak var collectionView: UICollectionView!
    @IBOutlet weak var cons_collectHei: NSLayoutConstraint!
    @IBOutlet weak var btn_addStudent: QMUIButton!
    @IBOutlet weak var tableView: UITableView!
    @IBOutlet weak var cons_tableHei: NSLayoutConstraint!
    @IBOutlet weak var studentTableView: UITableView!
    var CellW:Double!
    var CellH:Double!
    override func viewDidLoad() {
        super.viewDidLoad()
        title = "课程详情"
    }
    override func setUI() {
        CellW = (JQ_ScreenW - 155) / 3.0
        CellH = CellW * 0.439
        cons_tableHei.constant = 76
        collectionView.delegate = self
        collectionView.dataSource = self
        collectionView.register(UINib(nibName: "Common_1_CCell", bundle: nil), forCellWithReuseIdentifier: "_Common_1_CCell")
        studentTableView.dataSource = self
        studentTableView.register(UINib(nibName: "StudentInfoTCell", bundle: nil), forCellReuseIdentifier: "_StudentInfoTCell")
        btn_addStudent.imagePosition = .right
        btn_addStudent.spacingBetweenImageAndTitle = 3
    }
}
extension CourseDetailApplyVC:UICollectionViewDelegate{
}
extension CourseDetailApplyVC:UICollectionViewDataSource{
    func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
       let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "_Common_1_CCell", for: indexPath) as! Common_1_CCell
        return cell
    }
    func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
        return 3
    }
}
extension CourseDetailApplyVC:UICollectionViewDelegateFlowLayout{
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
        return 21
    }
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
        return 21
    }
    func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
        return CGSize(width: CellW, height: CellH)
    }
}
extension CourseDetailApplyVC:UITableViewDataSource{
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 1
    }
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "_StudentInfoTCell") as! StudentInfoTCell
        return cell
    }
}
WanPai/Root/Course/VC/CourseDetailApplyVC.xib
New file
@@ -0,0 +1,456 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="CourseDetailApplyVC" customModule="WanPai" customModuleProvider="target">
            <connections>
                <outlet property="btn_addStudent" destination="kv0-E8-XGD" id="H56-eE-BCc"/>
                <outlet property="collectionView" destination="ZtR-nH-Ly1" id="Snf-0R-x4b"/>
                <outlet property="cons_collectHei" destination="wOm-8j-9fG" id="ycB-BH-9OQ"/>
                <outlet property="cons_tableHei" destination="YrT-fE-DXP" id="wAi-wu-Afa"/>
                <outlet property="studentTableView" destination="CMD-gX-7vo" id="Xu0-eU-5SD"/>
                <outlet property="tableView" destination="CMD-gX-7vo" id="dC7-Q4-Es3"/>
                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
            </connections>
        </placeholder>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
            <subviews>
                <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="lYZ-6x-awL">
                    <rect key="frame" x="0.0" y="59" width="393" height="684"/>
                    <subviews>
                        <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" translatesAutoresizingMaskIntoConstraints="NO" id="mgu-kI-bYh">
                            <rect key="frame" x="0.0" y="0.0" width="393" height="754.66666666666663"/>
                            <subviews>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Syh-EN-qAE">
                                    <rect key="frame" x="0.0" y="0.0" width="393" height="221.66666666666666"/>
                                    <subviews>
                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="SMj-2r-hml">
                                            <rect key="frame" x="0.0" y="0.0" width="393" height="221.66666666666666"/>
                                        </imageView>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstItem="SMj-2r-hml" firstAttribute="leading" secondItem="Syh-EN-qAE" secondAttribute="leading" id="1ck-Uh-sVN"/>
                                        <constraint firstAttribute="trailing" secondItem="SMj-2r-hml" secondAttribute="trailing" id="5qy-dC-kn1"/>
                                        <constraint firstAttribute="bottom" secondItem="SMj-2r-hml" secondAttribute="bottom" id="FkG-Bg-K2A"/>
                                        <constraint firstAttribute="width" secondItem="Syh-EN-qAE" secondAttribute="height" multiplier="1:0.564" id="SIT-6h-dXZ"/>
                                        <constraint firstItem="SMj-2r-hml" firstAttribute="top" secondItem="Syh-EN-qAE" secondAttribute="top" id="bHo-48-gkz"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="rzE-lm-roO">
                                    <rect key="frame" x="0.0" y="221.66666666666669" width="393" height="79"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="kcf-Aq-bZk">
                                            <rect key="frame" x="13" y="78" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686270000001" green="0.59215686270000001" blue="0.59215686270000001" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="oy0-mw-dH0"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="FDE-aj-7d9">
                                            <rect key="frame" x="14" y="14" width="365" height="50"/>
                                            <constraints>
                                                <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="25" id="hvb-9e-WSH"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="18"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstAttribute="bottom" secondItem="kcf-Aq-bZk" secondAttribute="bottom" id="Duf-eq-ITI"/>
                                        <constraint firstItem="FDE-aj-7d9" firstAttribute="leading" secondItem="rzE-lm-roO" secondAttribute="leading" constant="14" id="GqN-gp-5eA"/>
                                        <constraint firstItem="kcf-Aq-bZk" firstAttribute="leading" secondItem="rzE-lm-roO" secondAttribute="leading" constant="13" id="PtR-ic-IEh"/>
                                        <constraint firstItem="FDE-aj-7d9" firstAttribute="top" secondItem="rzE-lm-roO" secondAttribute="top" constant="14" id="q87-Xe-bgG"/>
                                        <constraint firstItem="kcf-Aq-bZk" firstAttribute="top" secondItem="FDE-aj-7d9" secondAttribute="bottom" constant="14" id="rbY-gL-4oT"/>
                                        <constraint firstAttribute="trailing" secondItem="kcf-Aq-bZk" secondAttribute="trailing" id="xgR-PE-k90"/>
                                        <constraint firstAttribute="trailing" secondItem="FDE-aj-7d9" secondAttribute="trailing" constant="14" id="z4y-CD-eZI"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="0ER-xO-h01">
                                    <rect key="frame" x="0.0" y="300.66666666666669" width="393" height="74"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="zYh-CH-Ib2">
                                            <rect key="frame" x="13" y="73" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686270000001" green="0.59215686270000001" blue="0.59215686270000001" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="a1D-Je-2EW"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="上课时间:" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="wrX-zM-oQd">
                                            <rect key="frame" x="14" y="14" width="71.666666666666671" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="dbh-fs-MIm"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="每周二、周三、周四" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="z0j-zm-BuW">
                                            <rect key="frame" x="90.666666666666671" y="14" width="128.66666666666663" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="GlH-i5-93x"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="00:00 - 24:00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gAj-GU-kf7">
                                            <rect key="frame" x="90.666666666666657" y="42" width="93.666666666666657" height="17"/>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <color key="textColor" name="FE6E0D"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstItem="wrX-zM-oQd" firstAttribute="leading" secondItem="0ER-xO-h01" secondAttribute="leading" constant="14" id="Ed0-LT-ZHy"/>
                                        <constraint firstItem="gAj-GU-kf7" firstAttribute="top" secondItem="z0j-zm-BuW" secondAttribute="bottom" constant="8" id="Rbr-2f-FSN"/>
                                        <constraint firstItem="wrX-zM-oQd" firstAttribute="top" secondItem="0ER-xO-h01" secondAttribute="top" constant="14" id="Vvu-lU-g8E"/>
                                        <constraint firstItem="zYh-CH-Ib2" firstAttribute="top" secondItem="gAj-GU-kf7" secondAttribute="bottom" constant="14" id="dOR-sZ-QFt"/>
                                        <constraint firstAttribute="trailing" secondItem="zYh-CH-Ib2" secondAttribute="trailing" id="e9R-ZM-Gff"/>
                                        <constraint firstItem="zYh-CH-Ib2" firstAttribute="leading" secondItem="0ER-xO-h01" secondAttribute="leading" constant="13" id="gbp-rE-hDg"/>
                                        <constraint firstItem="gAj-GU-kf7" firstAttribute="leading" secondItem="z0j-zm-BuW" secondAttribute="leading" id="kaO-0V-O1J"/>
                                        <constraint firstAttribute="bottom" secondItem="zYh-CH-Ib2" secondAttribute="bottom" id="rGV-HU-JXF"/>
                                        <constraint firstItem="z0j-zm-BuW" firstAttribute="leading" secondItem="wrX-zM-oQd" secondAttribute="trailing" constant="5" id="sEY-nD-oJ6"/>
                                        <constraint firstItem="z0j-zm-BuW" firstAttribute="centerY" secondItem="wrX-zM-oQd" secondAttribute="centerY" id="w5a-PG-HqG"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="VGI-DF-8ON">
                                    <rect key="frame" x="0.0" y="374.66666666666669" width="393" height="49"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="znt-4O-jEV">
                                            <rect key="frame" x="13" y="48" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686270000001" green="0.59215686270000001" blue="0.59215686270000001" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="ttP-70-DAQ"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="上课门店:" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0AN-B3-8VY">
                                            <rect key="frame" x="14" y="14" width="71.666666666666671" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="2ds-fw-LkN"/>
                                                <constraint firstAttribute="width" constant="71.670000000000002" id="Yym-5v-dem"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="--" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="OPI-Cq-tpZ">
                                            <rect key="frame" x="90.666666666666657" y="14" width="292.33333333333337" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="ZGk-vq-hqz"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstItem="OPI-Cq-tpZ" firstAttribute="centerY" secondItem="0AN-B3-8VY" secondAttribute="centerY" id="9mH-uh-xpx"/>
                                        <constraint firstItem="OPI-Cq-tpZ" firstAttribute="leading" secondItem="0AN-B3-8VY" secondAttribute="trailing" constant="5" id="A2d-sS-UFm"/>
                                        <constraint firstItem="0AN-B3-8VY" firstAttribute="leading" secondItem="VGI-DF-8ON" secondAttribute="leading" constant="14" id="N5r-q6-q9q"/>
                                        <constraint firstAttribute="trailing" secondItem="OPI-Cq-tpZ" secondAttribute="trailing" constant="10" id="Pct-cA-cYz"/>
                                        <constraint firstItem="0AN-B3-8VY" firstAttribute="top" secondItem="VGI-DF-8ON" secondAttribute="top" constant="14" id="QxG-xa-Y4K"/>
                                        <constraint firstAttribute="trailing" secondItem="znt-4O-jEV" secondAttribute="trailing" id="dZW-Ri-EhW"/>
                                        <constraint firstAttribute="bottom" secondItem="znt-4O-jEV" secondAttribute="bottom" id="kb0-MX-Tns"/>
                                        <constraint firstItem="znt-4O-jEV" firstAttribute="top" secondItem="0AN-B3-8VY" secondAttribute="bottom" constant="14" id="oMm-Mv-Q6N"/>
                                        <constraint firstItem="znt-4O-jEV" firstAttribute="leading" secondItem="VGI-DF-8ON" secondAttribute="leading" constant="13" id="oo4-wT-wDs"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ers-Qf-hHM">
                                    <rect key="frame" x="0.0" y="423.66666666666669" width="393" height="49"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Oig-DA-7LE">
                                            <rect key="frame" x="13" y="47.999999999999943" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686270000001" green="0.59215686270000001" blue="0.59215686270000001" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="ZH6-ib-GWO"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="上课地址:" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4QB-KN-iOr">
                                            <rect key="frame" x="14" y="14" width="71.666666666666671" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="89d-Wi-xXY"/>
                                                <constraint firstAttribute="width" constant="71.670000000000002" id="FVk-LB-vxL"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="--" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="dq4-Ry-HOa">
                                            <rect key="frame" x="90.666666666666657" y="14" width="292.33333333333337" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="Z5A-jd-BbS"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstItem="4QB-KN-iOr" firstAttribute="leading" secondItem="ers-Qf-hHM" secondAttribute="leading" constant="14" id="27Y-8q-hGU"/>
                                        <constraint firstItem="Oig-DA-7LE" firstAttribute="leading" secondItem="ers-Qf-hHM" secondAttribute="leading" constant="13" id="3Qc-kd-inw"/>
                                        <constraint firstItem="dq4-Ry-HOa" firstAttribute="leading" secondItem="4QB-KN-iOr" secondAttribute="trailing" constant="5" id="7jW-9f-z7z"/>
                                        <constraint firstItem="dq4-Ry-HOa" firstAttribute="centerY" secondItem="4QB-KN-iOr" secondAttribute="centerY" id="LVj-mn-Ab3"/>
                                        <constraint firstItem="Oig-DA-7LE" firstAttribute="top" secondItem="4QB-KN-iOr" secondAttribute="bottom" constant="14" id="N7e-bD-x8F"/>
                                        <constraint firstItem="4QB-KN-iOr" firstAttribute="top" secondItem="ers-Qf-hHM" secondAttribute="top" constant="14" id="NEL-Dd-VTi"/>
                                        <constraint firstAttribute="bottom" secondItem="Oig-DA-7LE" secondAttribute="bottom" id="kwu-4R-mmi"/>
                                        <constraint firstAttribute="trailing" secondItem="dq4-Ry-HOa" secondAttribute="trailing" constant="10" id="ryX-TV-ZW3"/>
                                        <constraint firstAttribute="trailing" secondItem="Oig-DA-7LE" secondAttribute="trailing" id="wfy-Ma-pXY"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="sWT-Ul-ugp">
                                    <rect key="frame" x="0.0" y="472.66666666666663" width="393" height="98"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ENo-vd-rQB">
                                            <rect key="frame" x="13" y="97" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686270000001" green="0.59215686270000001" blue="0.59215686270000001" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="hxy-lx-Ib6"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="选择课程套餐:" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="o5m-d0-NYP">
                                            <rect key="frame" x="14" y="14" width="100" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="7AI-5Q-AEw"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <collectionView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" scrollEnabled="NO" dataMode="none" translatesAutoresizingMaskIntoConstraints="NO" id="ZtR-nH-Ly1">
                                            <rect key="frame" x="51" y="47" width="291" height="36"/>
                                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="36" id="wOm-8j-9fG"/>
                                            </constraints>
                                            <collectionViewFlowLayout key="collectionViewLayout" minimumLineSpacing="10" minimumInteritemSpacing="10" id="Ke2-16-31Z">
                                                <size key="itemSize" width="128" height="128"/>
                                                <size key="headerReferenceSize" width="0.0" height="0.0"/>
                                                <size key="footerReferenceSize" width="0.0" height="0.0"/>
                                                <inset key="sectionInset" minX="0.0" minY="0.0" maxX="0.0" maxY="0.0"/>
                                            </collectionViewFlowLayout>
                                        </collectionView>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstAttribute="trailing" secondItem="ZtR-nH-Ly1" secondAttribute="trailing" constant="51" id="4dU-Gb-8de"/>
                                        <constraint firstItem="ZtR-nH-Ly1" firstAttribute="top" secondItem="o5m-d0-NYP" secondAttribute="bottom" constant="13" id="R1f-P6-0uk"/>
                                        <constraint firstItem="o5m-d0-NYP" firstAttribute="leading" secondItem="sWT-Ul-ugp" secondAttribute="leading" constant="14" id="SHh-qh-XSR"/>
                                        <constraint firstAttribute="trailing" secondItem="ENo-vd-rQB" secondAttribute="trailing" id="X6l-Xk-Yyk"/>
                                        <constraint firstItem="ENo-vd-rQB" firstAttribute="leading" secondItem="sWT-Ul-ugp" secondAttribute="leading" constant="13" id="ZX2-IF-u9a"/>
                                        <constraint firstAttribute="bottom" secondItem="ZtR-nH-Ly1" secondAttribute="bottom" constant="15" id="c8g-8O-KNb"/>
                                        <constraint firstItem="o5m-d0-NYP" firstAttribute="top" secondItem="sWT-Ul-ugp" secondAttribute="top" constant="14" id="h2i-g2-lKF"/>
                                        <constraint firstAttribute="bottom" secondItem="ENo-vd-rQB" secondAttribute="bottom" id="ocF-Jl-lfy"/>
                                        <constraint firstItem="ZtR-nH-Ly1" firstAttribute="leading" secondItem="sWT-Ul-ugp" secondAttribute="leading" constant="51" id="x1D-bf-x2Z"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="4Za-aB-eli">
                                    <rect key="frame" x="0.0" y="570.66666666666663" width="393" height="135"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="IiO-ii-7c4">
                                            <rect key="frame" x="13" y="134" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686270000001" green="0.59215686270000001" blue="0.59215686270000001" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="Pch-cU-oGU"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="学员:" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ahH-c9-ZOs">
                                            <rect key="frame" x="14" y="14" width="43" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="707-U9-aHf"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="kv0-E8-XGD" customClass="QMUIButton">
                                            <rect key="frame" x="305" y="14" width="74" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="KLF-n4-ae3"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                            <state key="normal" title="选择学员" image="btn_add_1">
                                                <color key="titleColor" red="0.0" green="0.0" blue="0.0" alpha="0.56999999999999995" colorSpace="custom" customColorSpace="sRGB"/>
                                            </state>
                                        </button>
                                        <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" scrollEnabled="NO" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="CMD-gX-7vo">
                                            <rect key="frame" x="14" y="46" width="365" height="76"/>
                                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="76" id="YrT-fE-DXP"/>
                                            </constraints>
                                        </tableView>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstItem="ahH-c9-ZOs" firstAttribute="leading" secondItem="4Za-aB-eli" secondAttribute="leading" constant="14" id="2Ne-tu-svL"/>
                                        <constraint firstItem="CMD-gX-7vo" firstAttribute="leading" secondItem="4Za-aB-eli" secondAttribute="leading" constant="14" id="5HW-Rm-mmW"/>
                                        <constraint firstAttribute="bottom" secondItem="IiO-ii-7c4" secondAttribute="bottom" id="6aC-mV-3sO"/>
                                        <constraint firstItem="IiO-ii-7c4" firstAttribute="top" secondItem="CMD-gX-7vo" secondAttribute="bottom" constant="12" id="G71-6U-pRK"/>
                                        <constraint firstItem="IiO-ii-7c4" firstAttribute="leading" secondItem="4Za-aB-eli" secondAttribute="leading" constant="13" id="U9t-sc-aw9"/>
                                        <constraint firstAttribute="trailing" secondItem="kv0-E8-XGD" secondAttribute="trailing" constant="14" id="jSm-Bh-IJD"/>
                                        <constraint firstItem="ahH-c9-ZOs" firstAttribute="top" secondItem="4Za-aB-eli" secondAttribute="top" constant="14" id="kTJ-mL-S3o"/>
                                        <constraint firstItem="CMD-gX-7vo" firstAttribute="top" secondItem="ahH-c9-ZOs" secondAttribute="bottom" constant="12" id="lPD-WZ-I5s"/>
                                        <constraint firstAttribute="trailing" secondItem="CMD-gX-7vo" secondAttribute="trailing" constant="14" id="n1S-sG-whc"/>
                                        <constraint firstAttribute="trailing" secondItem="IiO-ii-7c4" secondAttribute="trailing" id="uWM-Xc-PMM"/>
                                        <constraint firstItem="kv0-E8-XGD" firstAttribute="centerY" secondItem="ahH-c9-ZOs" secondAttribute="centerY" id="xn2-9h-Vom"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="XNI-Vj-heV">
                                    <rect key="frame" x="0.0" y="705.66666666666663" width="393" height="49"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="1GA-NZ-pkR">
                                            <rect key="frame" x="13" y="48" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686270000001" green="0.59215686270000001" blue="0.59215686270000001" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="vHl-Qn-25F"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="可用优惠券:" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ENs-7n-mN0">
                                            <rect key="frame" x="14" y="14" width="86" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="dOV-lH-pNy"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="uvW-sZ-v3z">
                                            <rect key="frame" x="336" y="10" width="43" height="29"/>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                            <state key="normal" title="去选择">
                                                <color key="titleColor" name="FE6E0D"/>
                                            </state>
                                        </button>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstItem="uvW-sZ-v3z" firstAttribute="centerY" secondItem="XNI-Vj-heV" secondAttribute="centerY" id="HKW-ZS-ZUS"/>
                                        <constraint firstItem="ENs-7n-mN0" firstAttribute="top" secondItem="XNI-Vj-heV" secondAttribute="top" constant="14" id="UbJ-yU-seT"/>
                                        <constraint firstAttribute="trailing" secondItem="1GA-NZ-pkR" secondAttribute="trailing" id="VRE-95-xJR"/>
                                        <constraint firstAttribute="trailing" secondItem="uvW-sZ-v3z" secondAttribute="trailing" constant="14" id="jrc-RZ-XZA"/>
                                        <constraint firstItem="1GA-NZ-pkR" firstAttribute="top" secondItem="ENs-7n-mN0" secondAttribute="bottom" constant="14" id="pD4-2s-YRp"/>
                                        <constraint firstItem="ENs-7n-mN0" firstAttribute="leading" secondItem="XNI-Vj-heV" secondAttribute="leading" constant="14" id="pDQ-Wb-cbl"/>
                                        <constraint firstAttribute="bottom" secondItem="1GA-NZ-pkR" secondAttribute="bottom" id="wR5-QT-Zl7"/>
                                        <constraint firstItem="1GA-NZ-pkR" firstAttribute="leading" secondItem="XNI-Vj-heV" secondAttribute="leading" constant="13" id="z6y-gl-PVC"/>
                                    </constraints>
                                </view>
                            </subviews>
                        </stackView>
                    </subviews>
                    <constraints>
                        <constraint firstAttribute="bottom" secondItem="mgu-kI-bYh" secondAttribute="bottom" id="CsE-w4-NTv"/>
                        <constraint firstItem="mgu-kI-bYh" firstAttribute="centerX" secondItem="lYZ-6x-awL" secondAttribute="centerX" id="Ui5-hc-XsL"/>
                        <constraint firstAttribute="trailing" secondItem="mgu-kI-bYh" secondAttribute="trailing" id="oIL-sy-vAE"/>
                        <constraint firstItem="mgu-kI-bYh" firstAttribute="leading" secondItem="lYZ-6x-awL" secondAttribute="leading" id="xjf-wS-7eQ"/>
                        <constraint firstItem="mgu-kI-bYh" firstAttribute="top" secondItem="lYZ-6x-awL" secondAttribute="top" id="yGl-E8-ZAV"/>
                    </constraints>
                </scrollView>
                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="eP1-9j-rJC">
                    <rect key="frame" x="0.0" y="743" width="393" height="75"/>
                    <subviews>
                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥ 0" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="O3i-VB-ddE">
                            <rect key="frame" x="8" y="23.333333333333371" width="35.666666666666664" height="28.666666666666671"/>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="24"/>
                            <color key="textColor" name="FE6E0D"/>
                            <nil key="highlightedColor"/>
                        </label>
                        <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="2" translatesAutoresizingMaskIntoConstraints="NO" id="8n8-uF-nCb">
                            <rect key="frame" x="52.666666666666657" y="19.666666666666629" width="57.333333333333343" height="36"/>
                            <subviews>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="会员价:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="hAD-m3-5Ns">
                                    <rect key="frame" x="0.0" y="0.0" width="57.333333333333336" height="17"/>
                                    <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
                                    <color key="textColor" red="0.2470588235" green="0.2470588235" blue="0.2470588235" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                    <nil key="highlightedColor"/>
                                </label>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="玩湃币:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="AuS-Gc-geQ">
                                    <rect key="frame" x="0.0" y="19" width="57.333333333333336" height="17"/>
                                    <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
                                    <color key="textColor" red="0.2470588235" green="0.2470588235" blue="0.2470588235" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                    <nil key="highlightedColor"/>
                                </label>
                            </subviews>
                        </stackView>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Dbs-38-o1O">
                            <rect key="frame" x="137" y="17.666666666666629" width="242" height="40"/>
                            <color key="backgroundColor" name="FE6E0D"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="40" id="bwe-LL-VPf"/>
                            </constraints>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="立即报名"/>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
                                    <real key="value" value="20"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                        </button>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6Nt-Eo-1K1">
                            <rect key="frame" x="0.0" y="0.0" width="393" height="0.66666666666666663"/>
                            <color key="backgroundColor" red="0.89411764709999997" green="0.89411764709999997" blue="0.89411764709999997" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="0.5" id="Tq0-Cf-ZLm"/>
                            </constraints>
                        </view>
                    </subviews>
                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                    <constraints>
                        <constraint firstItem="8n8-uF-nCb" firstAttribute="centerY" secondItem="O3i-VB-ddE" secondAttribute="centerY" id="518-bg-be6"/>
                        <constraint firstItem="Dbs-38-o1O" firstAttribute="leading" secondItem="8n8-uF-nCb" secondAttribute="trailing" constant="27" id="DLb-0D-YZA"/>
                        <constraint firstItem="O3i-VB-ddE" firstAttribute="centerY" secondItem="eP1-9j-rJC" secondAttribute="centerY" id="FKw-bP-atp"/>
                        <constraint firstAttribute="trailing" secondItem="Dbs-38-o1O" secondAttribute="trailing" constant="14" id="Guv-Mo-58i"/>
                        <constraint firstItem="O3i-VB-ddE" firstAttribute="leading" secondItem="eP1-9j-rJC" secondAttribute="leading" constant="8" id="Wwu-vM-ndW"/>
                        <constraint firstAttribute="height" constant="75" id="X99-Ht-NiQ"/>
                        <constraint firstItem="6Nt-Eo-1K1" firstAttribute="top" secondItem="eP1-9j-rJC" secondAttribute="top" id="a8j-52-p3r"/>
                        <constraint firstItem="8n8-uF-nCb" firstAttribute="leading" secondItem="O3i-VB-ddE" secondAttribute="trailing" constant="9" id="jdo-Nh-dXO"/>
                        <constraint firstItem="Dbs-38-o1O" firstAttribute="centerY" secondItem="eP1-9j-rJC" secondAttribute="centerY" id="obf-Qf-djt"/>
                        <constraint firstAttribute="trailing" secondItem="6Nt-Eo-1K1" secondAttribute="trailing" id="pKy-5c-khe"/>
                        <constraint firstItem="6Nt-Eo-1K1" firstAttribute="leading" secondItem="eP1-9j-rJC" secondAttribute="leading" id="rl0-Ch-0jy"/>
                    </constraints>
                </view>
            </subviews>
            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
            <constraints>
                <constraint firstItem="lYZ-6x-awL" firstAttribute="top" secondItem="i5M-Pr-FkT" secondAttribute="topMargin" id="0fH-Lp-6vY"/>
                <constraint firstItem="lYZ-6x-awL" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="0m0-DP-vkR"/>
                <constraint firstItem="eP1-9j-rJC" firstAttribute="top" secondItem="lYZ-6x-awL" secondAttribute="bottom" id="7Vu-Ik-ssg"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="lYZ-6x-awL" secondAttribute="trailing" id="Hd5-iB-yC7"/>
                <constraint firstItem="eP1-9j-rJC" firstAttribute="leading" secondItem="i5M-Pr-FkT" secondAttribute="leading" id="hEv-Ns-YHm"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="eP1-9j-rJC" secondAttribute="trailing" id="jiO-0q-5aX"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="bottom" secondItem="eP1-9j-rJC" secondAttribute="bottom" id="xM2-Gz-YkD"/>
            </constraints>
            <point key="canvasLocation" x="38.931297709923662" y="20.422535211267608"/>
        </view>
    </objects>
    <resources>
        <image name="btn_add_1" width="16" height="16"/>
        <namedColor name="FE6E0D">
            <color red="0.99599999189376831" green="0.4309999942779541" blue="0.050999999046325684" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </namedColor>
        <systemColor name="systemBackgroundColor">
            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
        </systemColor>
    </resources>
</document>
WanPai/Root/Course/VC/CourseDetailVC.swift
New file
@@ -0,0 +1,34 @@
//
//  CourseDetailVC.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
import QMUIKit
class CourseDetailVC: BaseVC {
    @IBOutlet weak var btn_local: QMUIButton!
    override func viewDidLoad() {
        super.viewDidLoad()
        title = "课程详情"
    }
    override func setUI() {
        btn_local.imagePosition = .left
        btn_local.spacingBetweenImageAndTitle = 5
    }
    @IBAction func applyAction(_ sender: UIButton) {
         let vc = CourseDetailApplyVC()
        push(vc: vc)
    }
    @IBAction func localAction(_ sender: QMUIButton) {
    }
}
WanPai/Root/Course/VC/CourseDetailVC.xib
New file
@@ -0,0 +1,265 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="CourseDetailVC" customModule="WanPai" customModuleProvider="target">
            <connections>
                <outlet property="btn_local" destination="ejk-Ik-4lo" id="Gds-GI-U25"/>
                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
            </connections>
        </placeholder>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
            <subviews>
                <scrollView clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Rg2-qU-qCI">
                    <rect key="frame" x="0.0" y="59" width="393" height="684"/>
                    <subviews>
                        <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" translatesAutoresizingMaskIntoConstraints="NO" id="4lq-ly-hwP">
                            <rect key="frame" x="0.0" y="0.0" width="393" height="574.66666666666663"/>
                            <subviews>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="dyh-ku-yPw">
                                    <rect key="frame" x="0.0" y="0.0" width="393" height="221.66666666666666"/>
                                    <subviews>
                                        <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="Z8w-gF-Zqx">
                                            <rect key="frame" x="0.0" y="0.0" width="393" height="221.66666666666666"/>
                                        </imageView>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstAttribute="width" secondItem="dyh-ku-yPw" secondAttribute="height" multiplier="1:0.564" id="3MG-Oh-ffb"/>
                                        <constraint firstItem="Z8w-gF-Zqx" firstAttribute="leading" secondItem="dyh-ku-yPw" secondAttribute="leading" id="EaW-i6-Edn"/>
                                        <constraint firstItem="Z8w-gF-Zqx" firstAttribute="top" secondItem="dyh-ku-yPw" secondAttribute="top" id="R6U-0b-YFH"/>
                                        <constraint firstAttribute="bottom" secondItem="Z8w-gF-Zqx" secondAttribute="bottom" id="hra-0U-nuw"/>
                                        <constraint firstAttribute="trailing" secondItem="Z8w-gF-Zqx" secondAttribute="trailing" id="rwS-RS-vv3"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="g0x-NL-sDy">
                                    <rect key="frame" x="0.0" y="221.66666666666669" width="393" height="79"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="hkJ-dZ-Dsm">
                                            <rect key="frame" x="13" y="78" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686274509804" green="0.59215686274509804" blue="0.59215686274509804" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="B6a-T3-6WC"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="AU1-6y-12Y">
                                            <rect key="frame" x="14" y="14" width="365" height="25"/>
                                            <constraints>
                                                <constraint firstAttribute="height" relation="greaterThanOrEqual" constant="25" id="jqk-TH-6g7"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="18"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="leading" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="ejk-Ik-4lo" customClass="QMUIButton">
                                            <rect key="frame" x="14" y="46" width="223" height="18"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="18" id="hIU-Ca-ItQ"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/>
                                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                            <state key="normal" title="玩湃-喜望店(天府新谷9号楼1005A)" image="icon_local_mini">
                                                <color key="titleColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
                                            </state>
                                            <connections>
                                                <action selector="localAction:" destination="-1" eventType="touchUpInside" id="dvh-ks-RMN"/>
                                            </connections>
                                        </button>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="距离我0km" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="IzD-lg-sfB">
                                            <rect key="frame" x="316.33333333333331" y="47.666666666666629" width="62.666666666666686" height="14.333333333333336"/>
                                            <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/>
                                            <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstItem="hkJ-dZ-Dsm" firstAttribute="top" secondItem="ejk-Ik-4lo" secondAttribute="bottom" constant="14" id="5Ce-mJ-9Y0"/>
                                        <constraint firstItem="ejk-Ik-4lo" firstAttribute="leading" secondItem="g0x-NL-sDy" secondAttribute="leading" constant="14" id="7zO-D7-SZz"/>
                                        <constraint firstItem="IzD-lg-sfB" firstAttribute="centerY" secondItem="ejk-Ik-4lo" secondAttribute="centerY" id="91h-GQ-Gdc"/>
                                        <constraint firstAttribute="trailing" secondItem="hkJ-dZ-Dsm" secondAttribute="trailing" id="FzS-Gj-uOv"/>
                                        <constraint firstItem="ejk-Ik-4lo" firstAttribute="top" secondItem="AU1-6y-12Y" secondAttribute="bottom" constant="7" id="IHY-N9-ITJ"/>
                                        <constraint firstAttribute="bottom" secondItem="hkJ-dZ-Dsm" secondAttribute="bottom" id="JW8-P2-4I8"/>
                                        <constraint firstAttribute="trailing" secondItem="AU1-6y-12Y" secondAttribute="trailing" constant="14" id="VQa-06-Hqk"/>
                                        <constraint firstItem="hkJ-dZ-Dsm" firstAttribute="leading" secondItem="g0x-NL-sDy" secondAttribute="leading" constant="13" id="XAA-BI-ZI2"/>
                                        <constraint firstItem="AU1-6y-12Y" firstAttribute="leading" secondItem="g0x-NL-sDy" secondAttribute="leading" constant="14" id="eP6-ph-r4R"/>
                                        <constraint firstItem="AU1-6y-12Y" firstAttribute="top" secondItem="g0x-NL-sDy" secondAttribute="top" constant="14" id="mgr-6k-VK3"/>
                                        <constraint firstAttribute="trailing" secondItem="IzD-lg-sfB" secondAttribute="trailing" constant="14" id="qRn-yT-GcB"/>
                                    </constraints>
                                </view>
                                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="C7D-PZ-6fb">
                                    <rect key="frame" x="0.0" y="300.66666666666669" width="393" height="74"/>
                                    <subviews>
                                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="Adp-3Y-2eN">
                                            <rect key="frame" x="13" y="73" width="380" height="1"/>
                                            <color key="backgroundColor" red="0.59215686270000001" green="0.59215686270000001" blue="0.59215686270000001" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="1" id="G9x-SX-NJF"/>
                                            </constraints>
                                        </view>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="上课时间:" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="bD5-fy-zxF">
                                            <rect key="frame" x="14" y="14" width="71.666666666666671" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="FhX-6e-8yX"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="每周二、周三、周四" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="utV-MS-Xge">
                                            <rect key="frame" x="90.666666666666671" y="14" width="128.66666666666663" height="20"/>
                                            <constraints>
                                                <constraint firstAttribute="height" constant="20" id="Tt8-AL-kD0"/>
                                            </constraints>
                                            <fontDescription key="fontDescription" type="system" pointSize="14"/>
                                            <nil key="textColor"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="00:00 - 24:00" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="6RN-lP-9js">
                                            <rect key="frame" x="90.666666666666657" y="42" width="93.666666666666657" height="17"/>
                                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                            <color key="textColor" name="FE6E0D"/>
                                            <nil key="highlightedColor"/>
                                        </label>
                                    </subviews>
                                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                                    <constraints>
                                        <constraint firstItem="bD5-fy-zxF" firstAttribute="top" secondItem="C7D-PZ-6fb" secondAttribute="top" constant="14" id="Bli-OY-Oti"/>
                                        <constraint firstItem="Adp-3Y-2eN" firstAttribute="top" secondItem="6RN-lP-9js" secondAttribute="bottom" constant="14" id="GhN-yd-uT2"/>
                                        <constraint firstItem="6RN-lP-9js" firstAttribute="top" secondItem="utV-MS-Xge" secondAttribute="bottom" constant="8" id="P0o-QT-xw5"/>
                                        <constraint firstAttribute="bottom" secondItem="Adp-3Y-2eN" secondAttribute="bottom" id="eKU-vt-N8t"/>
                                        <constraint firstItem="bD5-fy-zxF" firstAttribute="leading" secondItem="C7D-PZ-6fb" secondAttribute="leading" constant="14" id="f9Q-V0-FMj"/>
                                        <constraint firstItem="6RN-lP-9js" firstAttribute="leading" secondItem="utV-MS-Xge" secondAttribute="leading" id="fnO-FO-e7w"/>
                                        <constraint firstItem="Adp-3Y-2eN" firstAttribute="leading" secondItem="C7D-PZ-6fb" secondAttribute="leading" constant="13" id="hVS-g6-hId"/>
                                        <constraint firstItem="utV-MS-Xge" firstAttribute="centerY" secondItem="bD5-fy-zxF" secondAttribute="centerY" id="khP-Sl-pWW"/>
                                        <constraint firstAttribute="trailing" secondItem="Adp-3Y-2eN" secondAttribute="trailing" id="pI1-iL-PoC"/>
                                        <constraint firstItem="utV-MS-Xge" firstAttribute="leading" secondItem="bD5-fy-zxF" secondAttribute="trailing" constant="5" id="qqS-qF-0uL"/>
                                    </constraints>
                                </view>
                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="OTP-xt-gbB">
                                    <rect key="frame" x="0.0" y="374.66666666666669" width="393" height="100"/>
                                    <constraints>
                                        <constraint firstAttribute="height" constant="100" id="ra0-2L-YY8"/>
                                    </constraints>
                                </imageView>
                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="UC8-uA-Izr">
                                    <rect key="frame" x="0.0" y="474.66666666666663" width="393" height="100"/>
                                    <constraints>
                                        <constraint firstAttribute="height" constant="100" id="xwL-l2-kBa"/>
                                    </constraints>
                                </imageView>
                            </subviews>
                        </stackView>
                    </subviews>
                    <constraints>
                        <constraint firstItem="4lq-ly-hwP" firstAttribute="top" secondItem="Rg2-qU-qCI" secondAttribute="top" id="1eR-03-QR5"/>
                        <constraint firstItem="4lq-ly-hwP" firstAttribute="centerX" secondItem="Rg2-qU-qCI" secondAttribute="centerX" id="PdJ-sn-1JG"/>
                        <constraint firstItem="4lq-ly-hwP" firstAttribute="leading" secondItem="Rg2-qU-qCI" secondAttribute="leading" id="PeR-Eh-pMH"/>
                        <constraint firstAttribute="bottom" secondItem="4lq-ly-hwP" secondAttribute="bottom" id="TPa-jh-nFV"/>
                        <constraint firstAttribute="trailing" secondItem="4lq-ly-hwP" secondAttribute="trailing" id="v01-Oy-sM3"/>
                    </constraints>
                </scrollView>
                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="wnC-bp-nci">
                    <rect key="frame" x="0.0" y="743" width="393" height="75"/>
                    <subviews>
                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="¥ 0" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="moa-lg-TqA">
                            <rect key="frame" x="8" y="23.333333333333371" width="35.666666666666664" height="28.666666666666671"/>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="24"/>
                            <color key="textColor" name="FE6E0D"/>
                            <nil key="highlightedColor"/>
                        </label>
                        <stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="2" translatesAutoresizingMaskIntoConstraints="NO" id="AaO-wm-Phu">
                            <rect key="frame" x="52.666666666666657" y="19.666666666666629" width="57.333333333333343" height="36"/>
                            <subviews>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="会员价:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="pXk-ET-NAX">
                                    <rect key="frame" x="0.0" y="0.0" width="57.333333333333336" height="17"/>
                                    <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
                                    <color key="textColor" red="0.24705882352941178" green="0.24705882352941178" blue="0.24705882352941178" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                    <nil key="highlightedColor"/>
                                </label>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="玩湃币:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="ldz-Xc-RZY">
                                    <rect key="frame" x="0.0" y="19" width="57.333333333333336" height="17"/>
                                    <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
                                    <color key="textColor" red="0.2470588235" green="0.2470588235" blue="0.2470588235" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                    <nil key="highlightedColor"/>
                                </label>
                            </subviews>
                        </stackView>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="xz5-Ol-6OL">
                            <rect key="frame" x="137" y="17.666666666666629" width="242" height="40"/>
                            <color key="backgroundColor" name="FE6E0D"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="40" id="Sr1-FR-ZcT"/>
                            </constraints>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="立即报名"/>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
                                    <real key="value" value="20"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                            <connections>
                                <action selector="applyAction:" destination="-1" eventType="touchUpInside" id="EXE-ow-3zh"/>
                            </connections>
                        </button>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="vLx-Ym-2BT">
                            <rect key="frame" x="0.0" y="0.0" width="393" height="0.66666666666666663"/>
                            <color key="backgroundColor" red="0.89411764705882346" green="0.89411764705882346" blue="0.89411764705882346" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="0.5" id="qw1-Sd-Tp6"/>
                            </constraints>
                        </view>
                    </subviews>
                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                    <constraints>
                        <constraint firstItem="vLx-Ym-2BT" firstAttribute="leading" secondItem="wnC-bp-nci" secondAttribute="leading" id="0mA-xu-4Gw"/>
                        <constraint firstItem="moa-lg-TqA" firstAttribute="centerY" secondItem="wnC-bp-nci" secondAttribute="centerY" id="Fp4-0K-MKT"/>
                        <constraint firstAttribute="trailing" secondItem="xz5-Ol-6OL" secondAttribute="trailing" constant="14" id="Fun-i5-O3g"/>
                        <constraint firstItem="AaO-wm-Phu" firstAttribute="leading" secondItem="moa-lg-TqA" secondAttribute="trailing" constant="9" id="Ndw-RN-uID"/>
                        <constraint firstItem="AaO-wm-Phu" firstAttribute="centerY" secondItem="moa-lg-TqA" secondAttribute="centerY" id="aaB-iy-BB7"/>
                        <constraint firstItem="xz5-Ol-6OL" firstAttribute="leading" secondItem="AaO-wm-Phu" secondAttribute="trailing" constant="27" id="cK4-AI-pio"/>
                        <constraint firstAttribute="trailing" secondItem="vLx-Ym-2BT" secondAttribute="trailing" id="icl-bN-3t0"/>
                        <constraint firstAttribute="height" constant="75" id="mg0-k1-0Lc"/>
                        <constraint firstItem="vLx-Ym-2BT" firstAttribute="top" secondItem="wnC-bp-nci" secondAttribute="top" id="qyC-hn-h5m"/>
                        <constraint firstItem="moa-lg-TqA" firstAttribute="leading" secondItem="wnC-bp-nci" secondAttribute="leading" constant="8" id="tSh-QE-esw"/>
                        <constraint firstItem="xz5-Ol-6OL" firstAttribute="centerY" secondItem="wnC-bp-nci" secondAttribute="centerY" id="uHP-lZ-HWl"/>
                    </constraints>
                </view>
            </subviews>
            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
            <constraints>
                <constraint firstItem="wnC-bp-nci" firstAttribute="top" secondItem="Rg2-qU-qCI" secondAttribute="bottom" id="5NQ-6h-SQt"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="wnC-bp-nci" secondAttribute="trailing" id="8EZ-Gs-l0z"/>
                <constraint firstItem="Rg2-qU-qCI" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="FZP-MY-dMX"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="Rg2-qU-qCI" secondAttribute="trailing" id="JYG-sY-R6t"/>
                <constraint firstItem="wnC-bp-nci" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="P3U-4t-6Oi"/>
                <constraint firstItem="Rg2-qU-qCI" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" id="wFb-ga-fRL"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="bottom" secondItem="wnC-bp-nci" secondAttribute="bottom" id="wQe-Gk-CJk"/>
            </constraints>
            <point key="canvasLocation" x="136.64122137404578" y="20.422535211267608"/>
        </view>
    </objects>
    <resources>
        <image name="icon_local_mini" width="11" height="16"/>
        <namedColor name="FE6E0D">
            <color red="0.99599999189376831" green="0.4309999942779541" blue="0.050999999046325684" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </namedColor>
        <systemColor name="systemBackgroundColor">
            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
        </systemColor>
    </resources>
</document>
WanPai/Root/Course/VC/CourseListVC.swift
New file
@@ -0,0 +1,98 @@
//
//  CourseListVC.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
import QMUIKit
class CourseListVC: BaseVC {
    @IBOutlet weak var view_topView: UIView!
    @IBOutlet weak var tf_search: QMUITextField!
    @IBOutlet weak var tableView: UITableView!
    @IBOutlet weak var btn_courseType: QMUIButton!
    @IBOutlet weak var btn_stores: QMUIButton!
    @IBOutlet weak var btn_sales: QMUIButton!
    @IBOutlet weak var btn_distance: QMUIButton!
    override func viewDidLoad() {
        super.viewDidLoad()
        title = "课程列表"
    }
    override func setUI() {
        btn_courseType.imagePosition = .right
        btn_stores.imagePosition = .right
        btn_sales.imagePosition = .right
        btn_distance.imagePosition = .right
        btn_courseType.spacingBetweenImageAndTitle = 5
        btn_stores.spacingBetweenImageAndTitle = 5
        btn_sales.spacingBetweenImageAndTitle = 5
        btn_distance.spacingBetweenImageAndTitle = 5
        tableView.delegate = self
        tableView.dataSource = self
        tableView.register(UINib(nibName: "CourseTCell", bundle: nil), forCellReuseIdentifier: "_CourseTCell")
        tableView.separatorStyle = .none
    }
    @IBAction func searchAction(_ sender: UIButton) {
    }
    @IBAction func crouseTypeAction(_ sender: UIButton) {
        guard !sender.isSelected else {return}
        sender.isSelected = true
        CourseSubTypeView.show(inView: self.view, afterView: view_topView, items: ["足球课程","篮球课程","羽毛球课程","网球课程"]) { str in
            sender.isSelected = false
        } closeClouse: {
            sender.isSelected = false
        }
    }
    @IBAction func inStoresAction(_ sender: UIButton) {
        guard !sender.isSelected else {return}
        sender.isSelected = true
        CourseSubTypeView.show(inView: self.view, afterView: view_topView, items: ["玩湃-喜望店","玩湃-喜望店","玩湃-喜望店","玩湃-喜望店"]) { str in
            sender.isSelected = false
        } closeClouse: {
            sender.isSelected = false
        }
    }
    @IBAction func saleAction(_ sender: UIButton) {
    }
    @IBAction func distanceAction(_ sender: UIButton) {
    }
}
extension CourseListVC:UITableViewDelegate{
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        let vc = CourseDetailVC()
        push(vc: vc)
    }
}
extension CourseListVC:UITableViewDataSource{
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
         let cell = tableView.dequeueReusableCell(withIdentifier: "_CourseTCell") as! CourseTCell
        return cell
    }
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 5
    }
}
WanPai/Root/Course/VC/CourseListVC.xib
New file
@@ -0,0 +1,197 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner" customClass="CourseListVC" customModule="WanPai" customModuleProvider="target">
            <connections>
                <outlet property="btn_courseType" destination="t2I-Ui-tOU" id="SKV-Ff-lu5"/>
                <outlet property="btn_distance" destination="wS1-hG-Kg8" id="jsj-eR-6I6"/>
                <outlet property="btn_sales" destination="NcC-Kc-Iu6" id="ne8-Nq-e8c"/>
                <outlet property="btn_stores" destination="nAn-MT-4zR" id="GDA-LP-7mQ"/>
                <outlet property="tableView" destination="Uy7-FM-GEG" id="wsg-vH-5S5"/>
                <outlet property="tf_search" destination="c4Q-WQ-T1F" id="MRv-g9-aaN"/>
                <outlet property="view" destination="i5M-Pr-FkT" id="sfx-zR-JGt"/>
                <outlet property="view_topView" destination="1pn-Fd-8Ng" id="zNI-t7-azW"/>
            </connections>
        </placeholder>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <view clearsContextBeforeDrawing="NO" contentMode="scaleToFill" id="i5M-Pr-FkT">
            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
            <subviews>
                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="1pn-Fd-8Ng">
                    <rect key="frame" x="0.0" y="59" width="393" height="105"/>
                    <subviews>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="uud-fe-oji">
                            <rect key="frame" x="14" y="15" width="326" height="38"/>
                            <subviews>
                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_search" translatesAutoresizingMaskIntoConstraints="NO" id="nUl-EG-ACs">
                                    <rect key="frame" x="4" y="10.666666666666671" width="17" height="17"/>
                                </imageView>
                                <textField opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="248" contentHorizontalAlignment="left" contentVerticalAlignment="center" placeholder="输入课程名称,门店名称" textAlignment="natural" minimumFontSize="17" translatesAutoresizingMaskIntoConstraints="NO" id="c4Q-WQ-T1F" customClass="QMUITextField">
                                    <rect key="frame" x="25" y="0.0" width="291" height="38"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                                    <textInputTraits key="textInputTraits" returnKeyType="search"/>
                                    <userDefinedRuntimeAttributes>
                                        <userDefinedRuntimeAttribute type="color" keyPath="placeholderColor">
                                            <color key="value" red="0.78431372549019607" green="0.792156862745098" blue="0.83921568627450982" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                        </userDefinedRuntimeAttribute>
                                    </userDefinedRuntimeAttributes>
                                </textField>
                            </subviews>
                            <color key="backgroundColor" red="0.96470588235294119" green="0.96470588235294119" blue="0.96862745098039216" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                            <constraints>
                                <constraint firstItem="c4Q-WQ-T1F" firstAttribute="leading" secondItem="nUl-EG-ACs" secondAttribute="trailing" constant="4" id="HI1-12-3lL"/>
                                <constraint firstAttribute="bottom" secondItem="c4Q-WQ-T1F" secondAttribute="bottom" id="Ycm-v6-e1b"/>
                                <constraint firstItem="c4Q-WQ-T1F" firstAttribute="top" secondItem="uud-fe-oji" secondAttribute="top" id="aFo-07-Nqx"/>
                                <constraint firstItem="nUl-EG-ACs" firstAttribute="leading" secondItem="uud-fe-oji" secondAttribute="leading" constant="4" id="bRl-Ag-igk"/>
                                <constraint firstAttribute="height" constant="38" id="dfh-Or-nHZ"/>
                                <constraint firstItem="nUl-EG-ACs" firstAttribute="centerY" secondItem="uud-fe-oji" secondAttribute="centerY" id="iNa-il-qun"/>
                                <constraint firstAttribute="trailing" secondItem="c4Q-WQ-T1F" secondAttribute="trailing" constant="10" id="ptl-xi-PFM"/>
                            </constraints>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                                    <real key="value" value="4.1600000000000001"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                        </view>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="y6v-W2-zcy">
                            <rect key="frame" x="340" y="15" width="53" height="38"/>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="搜索">
                                <color key="titleColor" name="FE6E0D"/>
                            </state>
                            <connections>
                                <action selector="searchAction:" destination="-1" eventType="touchUpInside" id="LSD-oz-s7c"/>
                            </connections>
                        </button>
                        <stackView opaque="NO" contentMode="scaleToFill" distribution="equalSpacing" translatesAutoresizingMaskIntoConstraints="NO" id="Ibv-Ci-ENK">
                            <rect key="frame" x="14" y="53" width="365" height="52"/>
                            <subviews>
                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="t2I-Ui-tOU" customClass="QMUIButton">
                                    <rect key="frame" x="0.0" y="0.0" width="86" height="52"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                    <state key="normal" title="课程类型" image="icon_down_arrow">
                                        <color key="titleColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                    </state>
                                    <state key="selected" image="icon_down_arrow_s">
                                        <color key="titleColor" name="FE6E0D"/>
                                    </state>
                                    <connections>
                                        <action selector="crouseTypeAction:" destination="-1" eventType="touchUpInside" id="iSQ-m6-RIS"/>
                                    </connections>
                                </button>
                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="nAn-MT-4zR" customClass="QMUIButton">
                                    <rect key="frame" x="110.33333333333331" y="0.0" width="86" height="52"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                    <state key="normal" title="所在门店" image="icon_down_arrow">
                                        <color key="titleColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                    </state>
                                    <state key="selected" image="icon_down_arrow_s">
                                        <color key="titleColor" name="FE6E0D"/>
                                    </state>
                                    <connections>
                                        <action selector="inStoresAction:" destination="-1" eventType="touchUpInside" id="AEM-PY-d44"/>
                                    </connections>
                                </button>
                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="NcC-Kc-Iu6" customClass="QMUIButton">
                                    <rect key="frame" x="220.66666666666666" y="0.0" width="59.999999999999972" height="52"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                    <state key="normal" title="销量" image="icon_aes">
                                        <color key="titleColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                    </state>
                                    <state key="selected" image="icon_des"/>
                                    <state key="highlighted" image="icon_sort_normal"/>
                                    <connections>
                                        <action selector="saleAction:" destination="-1" eventType="touchUpInside" id="3qT-GH-pha"/>
                                    </connections>
                                </button>
                                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="wS1-hG-Kg8" customClass="QMUIButton">
                                    <rect key="frame" x="305" y="0.0" width="60" height="52"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                                    <state key="normal" title="距离" image="icon_aes">
                                        <color key="titleColor" white="0.0" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                                    </state>
                                    <state key="selected" image="icon_des"/>
                                    <state key="highlighted" image="icon_sort_normal"/>
                                    <connections>
                                        <action selector="distanceAction:" destination="-1" eventType="touchUpInside" id="6di-mn-nZf"/>
                                    </connections>
                                </button>
                            </subviews>
                        </stackView>
                    </subviews>
                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                    <constraints>
                        <constraint firstItem="Ibv-Ci-ENK" firstAttribute="leading" secondItem="1pn-Fd-8Ng" secondAttribute="leading" constant="14" id="BBJ-1l-8qO"/>
                        <constraint firstAttribute="height" constant="105" id="BYW-OF-5sp"/>
                        <constraint firstAttribute="bottom" secondItem="Ibv-Ci-ENK" secondAttribute="bottom" id="Iwu-k9-H58"/>
                        <constraint firstItem="uud-fe-oji" firstAttribute="leading" secondItem="1pn-Fd-8Ng" secondAttribute="leading" constant="14" id="Lx3-sw-bkW"/>
                        <constraint firstItem="y6v-W2-zcy" firstAttribute="top" secondItem="uud-fe-oji" secondAttribute="top" id="NG3-Yt-ClU"/>
                        <constraint firstItem="y6v-W2-zcy" firstAttribute="bottom" secondItem="uud-fe-oji" secondAttribute="bottom" id="Orl-97-JRf"/>
                        <constraint firstItem="Ibv-Ci-ENK" firstAttribute="top" secondItem="uud-fe-oji" secondAttribute="bottom" id="Prz-mb-km8"/>
                        <constraint firstAttribute="trailing" secondItem="uud-fe-oji" secondAttribute="trailing" constant="53" id="THR-Ef-TFg"/>
                        <constraint firstItem="uud-fe-oji" firstAttribute="top" secondItem="1pn-Fd-8Ng" secondAttribute="top" constant="15" id="cUI-nx-Szh"/>
                        <constraint firstAttribute="trailing" secondItem="y6v-W2-zcy" secondAttribute="trailing" id="fJR-rg-c4V"/>
                        <constraint firstAttribute="trailing" secondItem="Ibv-Ci-ENK" secondAttribute="trailing" constant="14" id="l7K-z2-0GQ"/>
                        <constraint firstItem="y6v-W2-zcy" firstAttribute="leading" secondItem="uud-fe-oji" secondAttribute="trailing" id="mvb-Ct-Wft"/>
                    </constraints>
                    <userDefinedRuntimeAttributes>
                        <userDefinedRuntimeAttribute type="size" keyPath="shadowOffset">
                            <size key="value" width="0.0" height="2"/>
                        </userDefinedRuntimeAttribute>
                        <userDefinedRuntimeAttribute type="color" keyPath="shadowColor">
                            <color key="value" red="0.87450980392156863" green="0.87450980392156863" blue="0.87450980392156863" alpha="0.5" colorSpace="custom" customColorSpace="sRGB"/>
                        </userDefinedRuntimeAttribute>
                        <userDefinedRuntimeAttribute type="number" keyPath="shadowOpacity">
                            <real key="value" value="1"/>
                        </userDefinedRuntimeAttribute>
                    </userDefinedRuntimeAttributes>
                </view>
                <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="Uy7-FM-GEG">
                    <rect key="frame" x="0.0" y="169" width="393" height="649"/>
                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                </tableView>
            </subviews>
            <viewLayoutGuide key="safeArea" id="fnl-2z-Ty3"/>
            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
            <constraints>
                <constraint firstItem="Uy7-FM-GEG" firstAttribute="top" secondItem="1pn-Fd-8Ng" secondAttribute="bottom" constant="5" id="Nia-IB-LmX"/>
                <constraint firstItem="Uy7-FM-GEG" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="RnS-Vt-AHl"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="1pn-Fd-8Ng" secondAttribute="trailing" id="S0j-qM-l39"/>
                <constraint firstItem="1pn-Fd-8Ng" firstAttribute="top" secondItem="fnl-2z-Ty3" secondAttribute="top" id="VtA-Lr-az1"/>
                <constraint firstItem="1pn-Fd-8Ng" firstAttribute="leading" secondItem="fnl-2z-Ty3" secondAttribute="leading" id="mT6-x6-x8x"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="trailing" secondItem="Uy7-FM-GEG" secondAttribute="trailing" id="vkT-06-nok"/>
                <constraint firstItem="fnl-2z-Ty3" firstAttribute="bottom" secondItem="Uy7-FM-GEG" secondAttribute="bottom" id="ztp-Wd-zeE"/>
            </constraints>
            <point key="canvasLocation" x="38.931297709923662" y="20.422535211267608"/>
        </view>
    </objects>
    <resources>
        <image name="icon_aes" width="27" height="30"/>
        <image name="icon_des" width="27" height="30"/>
        <image name="icon_down_arrow" width="20" height="14"/>
        <image name="icon_down_arrow_s" width="20" height="14"/>
        <image name="icon_search" width="17" height="17"/>
        <image name="icon_sort_normal" width="27" height="30"/>
        <namedColor name="FE6E0D">
            <color red="0.99599999189376831" green="0.4309999942779541" blue="0.050999999046325684" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </namedColor>
        <systemColor name="systemBackgroundColor">
            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
        </systemColor>
    </resources>
</document>
WanPai/Root/Course/VC/CourseVC.swift
@@ -16,15 +16,4 @@
        view.backgroundColor = .jq_randomColor
    }
    /*
    // MARK: - Navigation
    // In a storyboard-based application, you will often want to do a little preparation before navigation
    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        // Get the new view controller using segue.destination.
        // Pass the selected object to the new view controller.
    }
    */
}
WanPai/Root/Course/View/CourseSubTypeView.swift
New file
@@ -0,0 +1,85 @@
//
//  CourseSubTypeView.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
import JQTools
class CourseSubTypeView: UIView,JQNibView{
    @IBOutlet weak var tableView: UITableView!
    @IBOutlet weak var cons_tableHeight: NSLayoutConstraint!
    private var closeClouse:(()->Void)?
    private var clouse:((String)->Void)?
    override func awakeFromNib() {
        super.awakeFromNib()
        tableView.delegate = self
        tableView.dataSource = self
        tableView.register(UINib(nibName: "Common_1_TCell", bundle: nil), forCellReuseIdentifier: "_Common_1_TCell")
        alpha = 0
        cons_tableHeight.constant = 0
        layoutIfNeeded()
    }
    static func show(inView:UIView,afterView:UIView,items:[String],clouse:@escaping (String)->Void,closeClouse:@escaping ()->Void){
        let subTypeView = CourseSubTypeView.jq_loadNibView()
        subTypeView.closeClouse = closeClouse
        subTypeView.clouse = clouse
        inView.addSubview(subTypeView)
        subTypeView.snp.makeConstraints { make in
            make.top.equalTo(afterView.snp.bottom)
            make.left.right.bottom.equalToSuperview()
        }
        UIView.animate(withDuration: 0.2) {
            subTypeView.alpha = 1
        } completion: { _ in
            subTypeView.cons_tableHeight.constant = 220
            UIView.animate(withDuration: 0.2) {
                subTypeView.layoutIfNeeded()
            }
        }
    }
    @IBAction func closeAction(_ sender: UIButton) {
        cons_tableHeight.constant = 0
        UIView.animate(withDuration: 0.2) {
            self.alpha = 0
            self.layoutIfNeeded()
        } completion: { _ in
            self.closeClouse?()
        }
    }
}
extension CourseSubTypeView:UITableViewDelegate{
    func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
        cons_tableHeight.constant = 0
        UIView.animate(withDuration: 0.2) {
            self.alpha = 0
            self.layoutIfNeeded()
        } completion: { _ in
            self.clouse?("")
            self.closeClouse?()
        }
    }
}
extension CourseSubTypeView:UITableViewDataSource{
    func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
        let cell = tableView.dequeueReusableCell(withIdentifier: "_Common_1_TCell") as! Common_1_TCell
        return cell
    }
    func tableView(_ tableView: UITableView, numberOfRowsInSection section: Int) -> Int {
        return 10
    }
}
WanPai/Root/Course/View/CourseSubTypeView.xib
New file
@@ -0,0 +1,55 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="CourseSubTypeView" customModule="WanPai" customModuleProvider="target">
            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
            <subviews>
                <tableView clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" style="plain" separatorStyle="default" rowHeight="-1" estimatedRowHeight="-1" sectionHeaderHeight="-1" estimatedSectionHeaderHeight="-1" sectionFooterHeight="-1" estimatedSectionFooterHeight="-1" translatesAutoresizingMaskIntoConstraints="NO" id="tHr-ij-ZuB">
                    <rect key="frame" x="0.0" y="0.0" width="393" height="200"/>
                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                    <constraints>
                        <constraint firstAttribute="height" constant="200" id="Olc-nq-hhf"/>
                    </constraints>
                </tableView>
                <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="UJg-nB-wyn">
                    <rect key="frame" x="0.0" y="200" width="393" height="652"/>
                    <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                    <connections>
                        <action selector="closeAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="Kw2-aB-0rB"/>
                    </connections>
                </button>
            </subviews>
            <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.69999999999999996" colorSpace="custom" customColorSpace="sRGB"/>
            <constraints>
                <constraint firstItem="UJg-nB-wyn" firstAttribute="top" secondItem="tHr-ij-ZuB" secondAttribute="bottom" id="LdP-Ae-C8B"/>
                <constraint firstItem="UJg-nB-wyn" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="Soe-At-gjt"/>
                <constraint firstAttribute="trailing" secondItem="UJg-nB-wyn" secondAttribute="trailing" id="cLA-uy-PLx"/>
                <constraint firstItem="tHr-ij-ZuB" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="g60-3C-lbo"/>
                <constraint firstItem="tHr-ij-ZuB" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="nUG-7v-6cU"/>
                <constraint firstAttribute="bottom" secondItem="UJg-nB-wyn" secondAttribute="bottom" id="ng5-xg-zFy"/>
                <constraint firstAttribute="trailing" secondItem="tHr-ij-ZuB" secondAttribute="trailing" id="ylk-Ed-mTh"/>
            </constraints>
            <freeformSimulatedSizeMetrics key="simulatedDestinationMetrics"/>
            <connections>
                <outlet property="cons_tableHeight" destination="Olc-nq-hhf" id="sC8-FE-rMP"/>
                <outlet property="tableView" destination="tHr-ij-ZuB" id="gyi-C8-kOw"/>
            </connections>
            <point key="canvasLocation" x="40" y="21"/>
        </view>
    </objects>
    <resources>
        <systemColor name="systemBackgroundColor">
            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
        </systemColor>
    </resources>
</document>
WanPai/Root/Home/VC/HomeVC.swift
@@ -44,12 +44,23 @@
    }
    
    
    @IBAction func chooseStoresAction(_ sender: TapBtn) {
        StoresChooseView.show()
    }
    override var preferredStatusBarStyle: UIStatusBarStyle{
        return .lightContent
    }
}
extension HomeVC:UICollectionViewDelegate{
    func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
        if indexPath.row == 0{
            let vc = CourseListVC()
            push(vc: vc)
        }
    }
    
}
WanPai/Root/Home/VC/HomeVC.xib
@@ -29,7 +29,7 @@
                                <constraint firstAttribute="width" secondItem="l0X-uU-o8F" secondAttribute="height" multiplier="1:0.605" id="zJ9-xI-msc"/>
                            </constraints>
                        </imageView>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CWt-Cn-ccL">
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="CWt-Cn-ccL" customClass="TapBtn" customModule="WanPai" customModuleProvider="target">
                            <rect key="frame" x="38" y="207.66666666666666" width="317" height="59.999999999999972"/>
                            <subviews>
                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_map" translatesAutoresizingMaskIntoConstraints="NO" id="0cp-Cu-32h">
@@ -82,6 +82,9 @@
                                </userDefinedRuntimeAttribute>
                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="NO"/>
                            </userDefinedRuntimeAttributes>
                            <connections>
                                <action selector="chooseStoresAction:" destination="-1" eventType="touchUpInside" id="vqn-zH-FF6"/>
                            </connections>
                        </view>
                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Y4w-3W-3I4">
                            <rect key="frame" x="18" y="126.66666666666669" width="206.33333333333334" height="43"/>
WanPai/Root/Other/CCell/Common_1_CCell.swift
New file
@@ -0,0 +1,18 @@
//
//  Common_1_CCell.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
class Common_1_CCell: UICollectionViewCell {
    @IBOutlet weak var label_content: UILabel!
    override func awakeFromNib() {
        super.awakeFromNib()
    }
}
WanPai/Root/Other/CCell/Common_1_CCell.xib
New file
@@ -0,0 +1,52 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <collectionViewCell opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" reuseIdentifier="_Common_1_CCell" id="gTV-IL-0wX" customClass="Common_1_CCell" customModule="WanPai" customModuleProvider="target">
            <rect key="frame" x="0.0" y="0.0" width="186" height="104"/>
            <autoresizingMask key="autoresizingMask"/>
            <view key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center">
                <rect key="frame" x="0.0" y="0.0" width="186" height="104"/>
                <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
                <subviews>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="4MA-Um-qBw">
                        <rect key="frame" x="0.0" y="0.0" width="186" height="104"/>
                        <color key="backgroundColor" name="FE6E0D"/>
                        <fontDescription key="fontDescription" type="system" weight="semibold" pointSize="14"/>
                        <color key="textColor" white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
                        <nil key="highlightedColor"/>
                        <userDefinedRuntimeAttributes>
                            <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                                <real key="value" value="4"/>
                            </userDefinedRuntimeAttribute>
                        </userDefinedRuntimeAttributes>
                    </label>
                </subviews>
            </view>
            <constraints>
                <constraint firstAttribute="trailing" secondItem="4MA-Um-qBw" secondAttribute="trailing" id="DUs-d5-won"/>
                <constraint firstAttribute="bottom" secondItem="4MA-Um-qBw" secondAttribute="bottom" id="ITc-PP-xPH"/>
                <constraint firstItem="4MA-Um-qBw" firstAttribute="leading" secondItem="gTV-IL-0wX" secondAttribute="leading" id="ciI-Uk-pCG"/>
                <constraint firstItem="4MA-Um-qBw" firstAttribute="top" secondItem="gTV-IL-0wX" secondAttribute="top" id="vnr-OB-Tuk"/>
            </constraints>
            <size key="customSize" width="186" height="104"/>
            <connections>
                <outlet property="label_content" destination="4MA-Um-qBw" id="ufR-gE-2WO"/>
            </connections>
            <point key="canvasLocation" x="143.5114503816794" y="39.436619718309863"/>
        </collectionViewCell>
    </objects>
    <resources>
        <namedColor name="FE6E0D">
            <color red="0.99599999189376831" green="0.4309999942779541" blue="0.050999999046325684" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </namedColor>
    </resources>
</document>
WanPai/Root/Other/TCell/Common_1_TCell.swift
New file
@@ -0,0 +1,17 @@
//
//  Common_1_TCell.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
class Common_1_TCell: UITableViewCell {
    override func awakeFromNib() {
        super.awakeFromNib()
        selectionStyle = .none
    }
}
WanPai/Root/Other/TCell/Common_1_TCell.xib
New file
@@ -0,0 +1,58 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="52" id="KGk-i7-Jjw" customClass="Common_1_TCell" customModule="WanPai" customModuleProvider="target">
            <rect key="frame" x="0.0" y="0.0" width="361" height="52"/>
            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" ambiguous="YES" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
                <rect key="frame" x="0.0" y="0.0" width="361" height="52"/>
                <autoresizingMask key="autoresizingMask"/>
                <subviews>
                    <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="jgc-9g-gHo">
                        <rect key="frame" x="13" y="50" width="335" height="0.6666666666666643"/>
                        <color key="backgroundColor" red="0.59215686274509804" green="0.59215686274509804" blue="0.59215686274509804" alpha="0.22" colorSpace="custom" customColorSpace="sRGB"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="0.5" id="LgV-Ys-OsW"/>
                        </constraints>
                    </view>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="P0g-n9-6rY">
                        <rect key="frame" x="14" y="15" width="36" height="20"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="20" id="E6k-02-8fo"/>
                        </constraints>
                        <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                        <nil key="textColor"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="btn_choose" translatesAutoresizingMaskIntoConstraints="NO" id="IsM-9J-Fsh">
                        <rect key="frame" x="325" y="12.666666666666664" width="25" height="25"/>
                    </imageView>
                </subviews>
                <constraints>
                    <constraint firstAttribute="trailing" secondItem="jgc-9g-gHo" secondAttribute="trailing" constant="13" id="0xj-tp-yIa"/>
                    <constraint firstItem="P0g-n9-6rY" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="15" id="6qm-Eh-ehG"/>
                    <constraint firstItem="P0g-n9-6rY" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="14" id="SQc-f6-se7"/>
                    <constraint firstItem="jgc-9g-gHo" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="13" id="aWI-T3-y4V"/>
                    <constraint firstItem="jgc-9g-gHo" firstAttribute="top" secondItem="P0g-n9-6rY" secondAttribute="bottom" constant="15" id="cVP-GO-Gkz"/>
                    <constraint firstAttribute="bottom" secondItem="jgc-9g-gHo" secondAttribute="bottom" id="kv8-Ka-PUl"/>
                    <constraint firstItem="IsM-9J-Fsh" firstAttribute="centerY" secondItem="P0g-n9-6rY" secondAttribute="centerY" id="tal-bN-Ecn"/>
                    <constraint firstAttribute="trailing" secondItem="IsM-9J-Fsh" secondAttribute="trailing" constant="11" id="v87-cu-PBZ"/>
                </constraints>
            </tableViewCellContentView>
            <viewLayoutGuide key="safeArea" id="njF-e1-oar"/>
            <point key="canvasLocation" x="170.22900763358777" y="-25.35211267605634"/>
        </tableViewCell>
    </objects>
    <resources>
        <image name="btn_choose" width="25" height="25"/>
    </resources>
</document>
WanPai/Root/Other/TCell/StudentInfoTCell.swift
New file
@@ -0,0 +1,16 @@
//
//  StudentInfoTCell.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
class StudentInfoTCell: UITableViewCell {
    override func awakeFromNib() {
        super.awakeFromNib()
        selectionStyle = .none
    }
}
WanPai/Root/Other/TCell/StudentInfoTCell.xib
New file
@@ -0,0 +1,106 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <tableViewCell contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" rowHeight="89" id="KGk-i7-Jjw" customClass="StudentInfoTCell" customModule="WanPai" customModuleProvider="target">
            <rect key="frame" x="0.0" y="0.0" width="321" height="89"/>
            <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
            <tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" ambiguous="YES" tableViewCell="KGk-i7-Jjw" id="H2p-sc-9uM">
                <rect key="frame" x="0.0" y="0.0" width="321" height="89"/>
                <autoresizingMask key="autoresizingMask"/>
                <subviews>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="姓名:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="JeQ-E8-nRz">
                        <rect key="frame" x="10" y="13" width="43" height="20"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="20" id="awc-A9-uu9"/>
                        </constraints>
                        <fontDescription key="fontDescription" type="system" pointSize="14"/>
                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="--" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="0TW-3R-Kd5">
                        <rect key="frame" x="53" y="14.666666666666664" width="13.333333333333329" height="17"/>
                        <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                        <nil key="textColor"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="年龄:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="LKW-Uz-UH1">
                        <rect key="frame" x="10" y="44" width="43" height="20"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="20" id="koj-3m-yDM"/>
                        </constraints>
                        <fontDescription key="fontDescription" type="system" pointSize="14"/>
                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="--" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="o0m-fp-glP">
                        <rect key="frame" x="53" y="45.666666666666664" width="13.333333333333329" height="17"/>
                        <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                        <nil key="textColor"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="联系电话:" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Kyb-yz-a5P">
                        <rect key="frame" x="114" y="13" width="71.666666666666686" height="20"/>
                        <constraints>
                            <constraint firstAttribute="height" constant="20" id="T0x-iq-e0Y"/>
                        </constraints>
                        <fontDescription key="fontDescription" type="system" pointSize="14"/>
                        <color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="custom" customColorSpace="sRGB"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="--" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="A9b-WE-sPt">
                        <rect key="frame" x="185.66666666666666" y="14.666666666666664" width="13.333333333333343" height="17"/>
                        <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                        <nil key="textColor"/>
                        <nil key="highlightedColor"/>
                    </label>
                    <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="UXK-s8-fn9">
                        <rect key="frame" x="300" y="12" width="16" height="22"/>
                        <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                        <state key="normal" image="btn_delete"/>
                    </button>
                </subviews>
                <color key="backgroundColor" red="1" green="0.90588235294117647" blue="0.80000000000000004" alpha="0.28000000000000003" colorSpace="custom" customColorSpace="sRGB"/>
                <constraints>
                    <constraint firstAttribute="trailing" secondItem="UXK-s8-fn9" secondAttribute="trailing" constant="5" id="1vt-Wd-VJi"/>
                    <constraint firstItem="o0m-fp-glP" firstAttribute="centerY" secondItem="LKW-Uz-UH1" secondAttribute="centerY" id="2L7-GK-MFV"/>
                    <constraint firstItem="A9b-WE-sPt" firstAttribute="centerY" secondItem="Kyb-yz-a5P" secondAttribute="centerY" id="6vb-Te-TbP"/>
                    <constraint firstItem="0TW-3R-Kd5" firstAttribute="centerY" secondItem="JeQ-E8-nRz" secondAttribute="centerY" id="7LY-4a-gJB"/>
                    <constraint firstItem="LKW-Uz-UH1" firstAttribute="top" secondItem="JeQ-E8-nRz" secondAttribute="bottom" constant="11" id="9n4-DF-JeD"/>
                    <constraint firstItem="o0m-fp-glP" firstAttribute="leading" secondItem="LKW-Uz-UH1" secondAttribute="trailing" id="AWA-5B-kih"/>
                    <constraint firstItem="JeQ-E8-nRz" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="10" id="CXh-T0-3g4"/>
                    <constraint firstItem="A9b-WE-sPt" firstAttribute="leading" secondItem="Kyb-yz-a5P" secondAttribute="trailing" id="DdS-4r-IuU"/>
                    <constraint firstItem="JeQ-E8-nRz" firstAttribute="top" secondItem="H2p-sc-9uM" secondAttribute="top" constant="13" id="IIg-Xu-Ryy"/>
                    <constraint firstItem="LKW-Uz-UH1" firstAttribute="leading" secondItem="JeQ-E8-nRz" secondAttribute="leading" id="PJX-Eq-8yk"/>
                    <constraint firstItem="UXK-s8-fn9" firstAttribute="centerY" secondItem="JeQ-E8-nRz" secondAttribute="centerY" id="ftj-PL-Dsx"/>
                    <constraint firstItem="Kyb-yz-a5P" firstAttribute="leading" secondItem="H2p-sc-9uM" secondAttribute="leading" constant="114" id="ijt-fh-jGr"/>
                    <constraint firstAttribute="bottom" secondItem="LKW-Uz-UH1" secondAttribute="bottom" constant="12" id="jUu-Jp-Ldv"/>
                    <constraint firstItem="Kyb-yz-a5P" firstAttribute="centerY" secondItem="JeQ-E8-nRz" secondAttribute="centerY" id="qpV-JN-yqD"/>
                    <constraint firstItem="0TW-3R-Kd5" firstAttribute="leading" secondItem="JeQ-E8-nRz" secondAttribute="trailing" id="rQb-lc-x8f"/>
                </constraints>
                <userDefinedRuntimeAttributes>
                    <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                        <real key="value" value="4"/>
                    </userDefinedRuntimeAttribute>
                    <userDefinedRuntimeAttribute type="number" keyPath="borderWidth">
                        <real key="value" value="1"/>
                    </userDefinedRuntimeAttribute>
                    <userDefinedRuntimeAttribute type="color" keyPath="borderColor">
                        <color key="value" red="0.99215686274509807" green="0.47450980392156861" blue="0.0078431372549019607" alpha="0.28000000000000003" colorSpace="custom" customColorSpace="sRGB"/>
                    </userDefinedRuntimeAttribute>
                </userDefinedRuntimeAttributes>
            </tableViewCellContentView>
            <point key="canvasLocation" x="40.458015267175568" y="35.563380281690144"/>
        </tableViewCell>
    </objects>
    <resources>
        <image name="btn_delete" width="16" height="18"/>
    </resources>
</document>
WanPai/Root/Other/View/StoresChooseView.swift
New file
@@ -0,0 +1,58 @@
//
//  StoresChooseView.swift
//  WanPai
//
//  Created by 杨锴 on 2023/6/9.
//
import UIKit
import JQTools
class StoresChooseView: UIView,JQNibView{
    @IBOutlet weak var view_container: UIView!
    @IBOutlet weak var label_currently: UILabel!
    override func awakeFromNib() {
        super.awakeFromNib()
        view_container.transform = .init(scaleX: 0.1, y: 0.1)
        alpha = 0
        layoutIfNeeded()
    }
    static func show(){
        let storesView = StoresChooseView.jq_loadNibView()
        storesView.frame = screnDelegate?.window?.frame ?? .zero
        screnDelegate?.window?.addSubview(storesView)
        UIView.animate(withDuration: 0.4) {
            storesView.view_container.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
            storesView.alpha = 1
        }
    }
    private func close(){
        UIView.animate(withDuration: 0.4) {
            self.view_container.transform = .init(scaleX: 0.1, y: 0.1)
            self.alpha = 0
        } completion: { _ in
            self.removeFromSuperview()
        }
    }
    @IBAction func tapChooseAction(_ sender: TapBtn) {
        JQ_MenuView().show(self, tapView: sender, items: ["1","2","3","3","3","3","3","3","3","3"], menuWidth: sender.jq_width, tableHei: 200) { index, str in
        }
    }
    @IBAction func closeAction(_ sender: UIButton) {
        close()
    }
    @IBAction func completeAction(_ sender: UIButton) {
        close()
    }
}
WanPai/Root/Other/View/StoresChooseView.xib
New file
@@ -0,0 +1,150 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="21507" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
    <device id="retina6_12" orientation="portrait" appearance="light"/>
    <dependencies>
        <deployment identifier="iOS"/>
        <plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="21505"/>
        <capability name="Named colors" minToolsVersion="9.0"/>
        <capability name="Safe area layout guides" minToolsVersion="9.0"/>
        <capability name="System colors in document resources" minToolsVersion="11.0"/>
        <capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
    </dependencies>
    <objects>
        <placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
        <placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
        <view contentMode="scaleToFill" id="iN0-l3-epB" customClass="StoresChooseView" customModule="WanPai" customModuleProvider="target">
            <rect key="frame" x="0.0" y="0.0" width="393" height="852"/>
            <autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
            <subviews>
                <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="ea6-eG-h1P">
                    <rect key="frame" x="45" y="333.66666666666669" width="303" height="210.00000000000006"/>
                    <subviews>
                        <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="选择门店" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="vnK-Bc-xWN">
                            <rect key="frame" x="114.66666666666666" y="24" width="73.666666666666657" height="21"/>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="18"/>
                            <nil key="textColor"/>
                            <nil key="highlightedColor"/>
                        </label>
                        <view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="YCO-sD-KY4" customClass="TapBtn" customModule="WanPai" customModuleProvider="target">
                            <rect key="frame" x="20" y="72" width="263" height="50"/>
                            <subviews>
                                <label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Label" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="sjM-7I-k3g">
                                    <rect key="frame" x="14.999999999999996" y="15.333333333333313" width="40.666666666666657" height="19.333333333333329"/>
                                    <fontDescription key="fontDescription" type="system" weight="medium" pointSize="16"/>
                                    <nil key="textColor"/>
                                    <nil key="highlightedColor"/>
                                </label>
                                <imageView clipsSubviews="YES" userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="icon_down_arrow" translatesAutoresizingMaskIntoConstraints="NO" id="ZlA-4r-lHH">
                                    <rect key="frame" x="231" y="18" width="20" height="14"/>
                                </imageView>
                            </subviews>
                            <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                            <constraints>
                                <constraint firstAttribute="trailing" secondItem="ZlA-4r-lHH" secondAttribute="trailing" constant="12" id="00m-AT-M0M"/>
                                <constraint firstItem="ZlA-4r-lHH" firstAttribute="centerY" secondItem="YCO-sD-KY4" secondAttribute="centerY" id="E8h-qe-LrY"/>
                                <constraint firstItem="sjM-7I-k3g" firstAttribute="leading" secondItem="YCO-sD-KY4" secondAttribute="leading" constant="15" id="UeS-kg-X5f"/>
                                <constraint firstAttribute="height" constant="50" id="fpC-Dp-ggR"/>
                                <constraint firstItem="sjM-7I-k3g" firstAttribute="centerY" secondItem="YCO-sD-KY4" secondAttribute="centerY" id="osj-6j-rNm"/>
                            </constraints>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="color" keyPath="borderColor">
                                    <color key="value" red="0.80392156862745101" green="0.80392156862745101" blue="0.80392156862745101" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                                </userDefinedRuntimeAttribute>
                                <userDefinedRuntimeAttribute type="number" keyPath="borderWidth">
                                    <real key="value" value="1"/>
                                </userDefinedRuntimeAttribute>
                                <userDefinedRuntimeAttribute type="number" keyPath="cornerRadius">
                                    <real key="value" value="6"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                            <connections>
                                <action selector="tapChooseAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="F2e-Ck-cxo"/>
                            </connections>
                        </view>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Gtx-K4-ldi">
                            <rect key="frame" x="20.000000000000007" y="150" width="121.66666666666669" height="40"/>
                            <color key="backgroundColor" red="0.75294117647058822" green="0.75294117647058822" blue="0.75294117647058822" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="40" id="VNh-Ns-GXh"/>
                            </constraints>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="关闭"/>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
                                    <real key="value" value="22"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                            <connections>
                                <action selector="closeAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="URM-MM-Tlb"/>
                            </connections>
                        </button>
                        <button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="MK0-Fw-fiO">
                            <rect key="frame" x="161.66666666666666" y="150" width="121.33333333333334" height="40"/>
                            <color key="backgroundColor" name="FE6E0D"/>
                            <constraints>
                                <constraint firstAttribute="height" constant="40" id="CGz-wa-xYW"/>
                            </constraints>
                            <fontDescription key="fontDescription" type="system" weight="medium" pointSize="14"/>
                            <inset key="imageEdgeInsets" minX="0.0" minY="0.0" maxX="2.2250738585072014e-308" maxY="0.0"/>
                            <state key="normal" title="确认"/>
                            <userDefinedRuntimeAttributes>
                                <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
                                <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
                                    <real key="value" value="20"/>
                                </userDefinedRuntimeAttribute>
                            </userDefinedRuntimeAttributes>
                            <connections>
                                <action selector="completeAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="zmz-SN-Ulx"/>
                            </connections>
                        </button>
                    </subviews>
                    <color key="backgroundColor" systemColor="systemBackgroundColor"/>
                    <constraints>
                        <constraint firstItem="YCO-sD-KY4" firstAttribute="top" secondItem="vnK-Bc-xWN" secondAttribute="bottom" constant="27" id="5Sg-XI-tyk"/>
                        <constraint firstItem="YCO-sD-KY4" firstAttribute="leading" secondItem="ea6-eG-h1P" secondAttribute="leading" constant="20" id="Ede-8g-lpm"/>
                        <constraint firstItem="MK0-Fw-fiO" firstAttribute="width" secondItem="Gtx-K4-ldi" secondAttribute="width" id="Nhf-NG-Bmn"/>
                        <constraint firstAttribute="bottom" secondItem="MK0-Fw-fiO" secondAttribute="bottom" constant="20" id="R8O-yc-CxM"/>
                        <constraint firstItem="vnK-Bc-xWN" firstAttribute="centerX" secondItem="ea6-eG-h1P" secondAttribute="centerX" id="RF5-nd-8KE"/>
                        <constraint firstItem="vnK-Bc-xWN" firstAttribute="top" secondItem="ea6-eG-h1P" secondAttribute="top" constant="24" id="S7D-zN-YJ6"/>
                        <constraint firstAttribute="trailing" secondItem="YCO-sD-KY4" secondAttribute="trailing" constant="20" id="Wh9-1t-F64"/>
                        <constraint firstAttribute="bottom" secondItem="Gtx-K4-ldi" secondAttribute="bottom" constant="20" id="brJ-st-kuO"/>
                        <constraint firstItem="MK0-Fw-fiO" firstAttribute="leading" secondItem="Gtx-K4-ldi" secondAttribute="trailing" constant="20" id="iiy-cI-0Cr"/>
                        <constraint firstAttribute="height" constant="210" id="jRa-OG-3Na"/>
                        <constraint firstAttribute="trailing" secondItem="MK0-Fw-fiO" secondAttribute="trailing" constant="20" id="kKt-QK-ktq"/>
                        <constraint firstItem="Gtx-K4-ldi" firstAttribute="leading" secondItem="ea6-eG-h1P" secondAttribute="leading" constant="20" id="wLW-ue-oaS"/>
                    </constraints>
                    <userDefinedRuntimeAttributes>
                        <userDefinedRuntimeAttribute type="boolean" keyPath="ld_maskToBoundsXIB" value="YES"/>
                        <userDefinedRuntimeAttribute type="number" keyPath="ld_cornerRadiusXIB">
                            <real key="value" value="20"/>
                        </userDefinedRuntimeAttribute>
                    </userDefinedRuntimeAttributes>
                </view>
            </subviews>
            <viewLayoutGuide key="safeArea" id="vUN-kp-3ea"/>
            <color key="backgroundColor" red="0.0" green="0.0" blue="0.0" alpha="0.69999999999999996" colorSpace="custom" customColorSpace="sRGB"/>
            <constraints>
                <constraint firstItem="ea6-eG-h1P" firstAttribute="centerY" secondItem="vUN-kp-3ea" secondAttribute="centerY" id="NQB-Yk-deI"/>
                <constraint firstItem="ea6-eG-h1P" firstAttribute="centerX" secondItem="vUN-kp-3ea" secondAttribute="centerX" id="O4F-6H-Xnc"/>
                <constraint firstItem="ea6-eG-h1P" firstAttribute="leading" secondItem="vUN-kp-3ea" secondAttribute="leading" constant="45" id="nBX-7R-Vi3"/>
                <constraint firstItem="vUN-kp-3ea" firstAttribute="trailing" secondItem="ea6-eG-h1P" secondAttribute="trailing" constant="45" id="plg-Gp-drS"/>
            </constraints>
            <connections>
                <outlet property="label_currently" destination="sjM-7I-k3g" id="zoR-nM-OxD"/>
                <outlet property="view_container" destination="ea6-eG-h1P" id="BWb-nv-CLC"/>
            </connections>
            <point key="canvasLocation" x="140" y="21"/>
        </view>
    </objects>
    <resources>
        <image name="icon_down_arrow" width="20" height="14"/>
        <namedColor name="FE6E0D">
            <color red="0.99599999189376831" green="0.4309999942779541" blue="0.050999999046325684" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
        </namedColor>
        <systemColor name="systemBackgroundColor">
            <color white="1" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
        </systemColor>
    </resources>
</document>