Commit a6448511bb152c50b513db59b8b861c0ee3c7b48
1 parent
262a84eb
完善整体框架
Showing
25 changed files
with
577 additions
and
47 deletions
LiveVideoCloud/LiveVideoCloud.xcodeproj/project.pbxproj
| ... | ... | @@ -8,7 +8,6 @@ |
| 8 | 8 | |
| 9 | 9 | /* Begin PBXBuildFile section */ |
| 10 | 10 | D2029B861E6EAAA50027CD92 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029B851E6EAAA50027CD92 /* main.m */; }; |
| 11 | - D2029B8C1E6EAAA50027CD92 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029B8B1E6EAAA50027CD92 /* ViewController.m */; }; | |
| 12 | 11 | D2029B8F1E6EAAA50027CD92 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D2029B8D1E6EAAA50027CD92 /* Main.storyboard */; }; |
| 13 | 12 | D2029B911E6EAAA50027CD92 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = D2029B901E6EAAA50027CD92 /* Assets.xcassets */; }; |
| 14 | 13 | D2029B941E6EAAA50027CD92 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = D2029B921E6EAAA50027CD92 /* LaunchScreen.storyboard */; }; |
| ... | ... | @@ -90,7 +89,6 @@ |
| 90 | 89 | D2029CC91E6EADE10027CD92 /* SVProgressHUD.bundle in Resources */ = {isa = PBXBuildFile; fileRef = D2029C6F1E6EADE10027CD92 /* SVProgressHUD.bundle */; }; |
| 91 | 90 | D2029CCA1E6EADE10027CD92 /* SVProgressHUD.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029C711E6EADE10027CD92 /* SVProgressHUD.m */; }; |
| 92 | 91 | D2029CCB1E6EADE10027CD92 /* SVRadialGradientLayer.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029C731E6EADE10027CD92 /* SVRadialGradientLayer.m */; }; |
| 93 | - D2029CCC1E6EADE10027CD92 /* HomeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029C791E6EADE10027CD92 /* HomeViewController.m */; }; | |
| 94 | 92 | D2029CCD1E6EADE10027CD92 /* SearchModel.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029C7C1E6EADE10027CD92 /* SearchModel.m */; }; |
| 95 | 93 | D2029CCE1E6EADE10027CD92 /* SearchRecomListModel.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029C7E1E6EADE10027CD92 /* SearchRecomListModel.m */; }; |
| 96 | 94 | D2029CCF1E6EADE10027CD92 /* SearchHttp.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029C821E6EADE10027CD92 /* SearchHttp.m */; }; |
| ... | ... | @@ -108,6 +106,11 @@ |
| 108 | 106 | D2029D091E6EAE2E0027CD92 /* Foundation+Log.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029CF21E6EAE2E0027CD92 /* Foundation+Log.m */; }; |
| 109 | 107 | D2029D0A1E6EAE2E0027CD92 /* ZXServerUrl.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029CFE1E6EAE2E0027CD92 /* ZXServerUrl.m */; }; |
| 110 | 108 | D2029D161E6EB00D0027CD92 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = D2029D151E6EB00D0027CD92 /* AppDelegate.m */; }; |
| 109 | + D2888D941E6EB8B4003A77C8 /* LVCTabBar.m in Sources */ = {isa = PBXBuildFile; fileRef = D2888D931E6EB8B4003A77C8 /* LVCTabBar.m */; }; | |
| 110 | + D2888D9E1E6EBF1B003A77C8 /* LVCLiveViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D2888D9B1E6EBF1B003A77C8 /* LVCLiveViewController.m */; }; | |
| 111 | + D2888DB11E6EC05F003A77C8 /* TempViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D2888DB01E6EC05F003A77C8 /* TempViewController.m */; }; | |
| 112 | + D2888DB41E6EC154003A77C8 /* HomeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D2888DB31E6EC154003A77C8 /* HomeViewController.m */; }; | |
| 113 | + D2888DB71E6EC1B8003A77C8 /* LVCMyViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = D2888DB61E6EC1B8003A77C8 /* LVCMyViewController.m */; }; | |
| 111 | 114 | /* End PBXBuildFile section */ |
| 112 | 115 | |
| 113 | 116 | /* Begin PBXContainerItemProxy section */ |
| ... | ... | @@ -130,8 +133,6 @@ |
| 130 | 133 | /* Begin PBXFileReference section */ |
| 131 | 134 | D2029B811E6EAAA50027CD92 /* LiveVideoCloud.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = LiveVideoCloud.app; sourceTree = BUILT_PRODUCTS_DIR; }; |
| 132 | 135 | D2029B851E6EAAA50027CD92 /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = "<group>"; }; |
| 133 | - D2029B8A1E6EAAA50027CD92 /* ViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = "<group>"; }; | |
| 134 | - D2029B8B1E6EAAA50027CD92 /* ViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = ViewController.m; sourceTree = "<group>"; }; | |
| 135 | 136 | D2029B8E1E6EAAA50027CD92 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; }; |
| 136 | 137 | D2029B901E6EAAA50027CD92 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; }; |
| 137 | 138 | D2029B931E6EAAA50027CD92 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; }; |
| ... | ... | @@ -299,8 +300,6 @@ |
| 299 | 300 | D2029C711E6EADE10027CD92 /* SVProgressHUD.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SVProgressHUD.m; sourceTree = "<group>"; }; |
| 300 | 301 | D2029C721E6EADE10027CD92 /* SVRadialGradientLayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SVRadialGradientLayer.h; sourceTree = "<group>"; }; |
| 301 | 302 | D2029C731E6EADE10027CD92 /* SVRadialGradientLayer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SVRadialGradientLayer.m; sourceTree = "<group>"; }; |
| 302 | - D2029C781E6EADE10027CD92 /* HomeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomeViewController.h; sourceTree = "<group>"; }; | |
| 303 | - D2029C791E6EADE10027CD92 /* HomeViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HomeViewController.m; sourceTree = "<group>"; }; | |
| 304 | 303 | D2029C7B1E6EADE10027CD92 /* SearchModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SearchModel.h; sourceTree = "<group>"; }; |
| 305 | 304 | D2029C7C1E6EADE10027CD92 /* SearchModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = SearchModel.m; sourceTree = "<group>"; }; |
| 306 | 305 | D2029C7D1E6EADE10027CD92 /* SearchRecomListModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = SearchRecomListModel.h; sourceTree = "<group>"; }; |
| ... | ... | @@ -344,6 +343,16 @@ |
| 344 | 343 | D2029CFF1E6EAE2E0027CD92 /* UtilKits.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = UtilKits.h; sourceTree = "<group>"; }; |
| 345 | 344 | D2029D121E6EAF8D0027CD92 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = "<group>"; }; |
| 346 | 345 | D2029D151E6EB00D0027CD92 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = "<group>"; }; |
| 346 | + D2888D921E6EB8B4003A77C8 /* LVCTabBar.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCTabBar.h; sourceTree = "<group>"; }; | |
| 347 | + D2888D931E6EB8B4003A77C8 /* LVCTabBar.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCTabBar.m; sourceTree = "<group>"; }; | |
| 348 | + D2888D9A1E6EBF1B003A77C8 /* LVCLiveViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCLiveViewController.h; sourceTree = "<group>"; }; | |
| 349 | + D2888D9B1E6EBF1B003A77C8 /* LVCLiveViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCLiveViewController.m; sourceTree = "<group>"; }; | |
| 350 | + D2888DAF1E6EC05F003A77C8 /* TempViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = TempViewController.h; sourceTree = "<group>"; }; | |
| 351 | + D2888DB01E6EC05F003A77C8 /* TempViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TempViewController.m; sourceTree = "<group>"; }; | |
| 352 | + D2888DB21E6EC154003A77C8 /* HomeViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomeViewController.h; sourceTree = "<group>"; }; | |
| 353 | + D2888DB31E6EC154003A77C8 /* HomeViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HomeViewController.m; sourceTree = "<group>"; }; | |
| 354 | + D2888DB51E6EC1B8003A77C8 /* LVCMyViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCMyViewController.h; sourceTree = "<group>"; }; | |
| 355 | + D2888DB61E6EC1B8003A77C8 /* LVCMyViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCMyViewController.m; sourceTree = "<group>"; }; | |
| 347 | 356 | /* End PBXFileReference section */ |
| 348 | 357 | |
| 349 | 358 | /* Begin PBXFrameworksBuildPhase section */ |
| ... | ... | @@ -400,8 +409,6 @@ |
| 400 | 409 | D2029BD01E6EADE10027CD92 /* Classes */, |
| 401 | 410 | D2029CD11E6EADE70027CD92 /* HttpService */, |
| 402 | 411 | D2029CD71E6EAE140027CD92 /* Resource */, |
| 403 | - D2029B8A1E6EAAA50027CD92 /* ViewController.h */, | |
| 404 | - D2029B8B1E6EAAA50027CD92 /* ViewController.m */, | |
| 405 | 412 | D2029B901E6EAAA50027CD92 /* Assets.xcassets */, |
| 406 | 413 | D2029CD61E6EADFB0027CD92 /* PrefixHeader.pch */, |
| 407 | 414 | D2029B841E6EAAA50027CD92 /* Supporting Files */, |
| ... | ... | @@ -469,6 +476,7 @@ |
| 469 | 476 | D2029BC71E6EADD70027CD92 /* ZXNavigationController.m */, |
| 470 | 477 | D2029BC81E6EADD70027CD92 /* ZXTabBarController.h */, |
| 471 | 478 | D2029BC91E6EADD70027CD92 /* ZXTabBarController.m */, |
| 479 | + D2888D911E6EB897003A77C8 /* View */, | |
| 472 | 480 | ); |
| 473 | 481 | path = Main; |
| 474 | 482 | sourceTree = "<group>"; |
| ... | ... | @@ -773,20 +781,24 @@ |
| 773 | 781 | D2029C741E6EADE10027CD92 /* Sections */ = { |
| 774 | 782 | isa = PBXGroup; |
| 775 | 783 | children = ( |
| 776 | - D2029C751E6EADE10027CD92 /* ZXSections */, | |
| 784 | + D2888DA71E6EC014003A77C8 /* homeSections */, | |
| 785 | + D2888D951E6EBAA7003A77C8 /* LiveSections */, | |
| 786 | + D2888DAB1E6EC014003A77C8 /* mySections */, | |
| 787 | + D2029C751E6EADE10027CD92 /* ZXSections(例子) */, | |
| 777 | 788 | ); |
| 778 | 789 | path = Sections; |
| 779 | 790 | sourceTree = "<group>"; |
| 780 | 791 | }; |
| 781 | - D2029C751E6EADE10027CD92 /* ZXSections */ = { | |
| 792 | + D2029C751E6EADE10027CD92 /* ZXSections(例子) */ = { | |
| 782 | 793 | isa = PBXGroup; |
| 783 | 794 | children = ( |
| 784 | - D2029C761E6EADE10027CD92 /* Home */, | |
| 795 | + D2029C761E6EADE10027CD92 /* Temp */, | |
| 785 | 796 | ); |
| 797 | + name = "ZXSections(例子)"; | |
| 786 | 798 | path = ZXSections; |
| 787 | 799 | sourceTree = "<group>"; |
| 788 | 800 | }; |
| 789 | - D2029C761E6EADE10027CD92 /* Home */ = { | |
| 801 | + D2029C761E6EADE10027CD92 /* Temp */ = { | |
| 790 | 802 | isa = PBXGroup; |
| 791 | 803 | children = ( |
| 792 | 804 | D2029C771E6EADE10027CD92 /* Controller */, |
| ... | ... | @@ -794,14 +806,15 @@ |
| 794 | 806 | D2029C7F1E6EADE10027CD92 /* Presenter */, |
| 795 | 807 | D2029C851E6EADE10027CD92 /* View */, |
| 796 | 808 | ); |
| 809 | + name = Temp; | |
| 797 | 810 | path = Home; |
| 798 | 811 | sourceTree = "<group>"; |
| 799 | 812 | }; |
| 800 | 813 | D2029C771E6EADE10027CD92 /* Controller */ = { |
| 801 | 814 | isa = PBXGroup; |
| 802 | 815 | children = ( |
| 803 | - D2029C781E6EADE10027CD92 /* HomeViewController.h */, | |
| 804 | - D2029C791E6EADE10027CD92 /* HomeViewController.m */, | |
| 816 | + D2888DAF1E6EC05F003A77C8 /* TempViewController.h */, | |
| 817 | + D2888DB01E6EC05F003A77C8 /* TempViewController.m */, | |
| 805 | 818 | ); |
| 806 | 819 | path = Controller; |
| 807 | 820 | sourceTree = "<group>"; |
| ... | ... | @@ -887,13 +900,13 @@ |
| 887 | 900 | D2029CDC1E6EAE2E0027CD92 /* UtilKits */ = { |
| 888 | 901 | isa = PBXGroup; |
| 889 | 902 | children = ( |
| 903 | + D2029CFF1E6EAE2E0027CD92 /* UtilKits.h */, | |
| 904 | + D2029CF21E6EAE2E0027CD92 /* Foundation+Log.m */, | |
| 890 | 905 | D2029CDD1E6EAE2E0027CD92 /* Category */, |
| 891 | 906 | D2029CEC1E6EAE2E0027CD92 /* Const */, |
| 892 | 907 | D2029CEF1E6EAE2E0027CD92 /* DeviceInfo */, |
| 893 | - D2029CF21E6EAE2E0027CD92 /* Foundation+Log.m */, | |
| 894 | 908 | D2029CF31E6EAE2E0027CD92 /* Macro */, |
| 895 | 909 | D2029CFC1E6EAE2E0027CD92 /* ServerUrl */, |
| 896 | - D2029CFF1E6EAE2E0027CD92 /* UtilKits.h */, | |
| 897 | 910 | ); |
| 898 | 911 | path = UtilKits; |
| 899 | 912 | sourceTree = "<group>"; |
| ... | ... | @@ -977,6 +990,114 @@ |
| 977 | 990 | path = AppDelegate; |
| 978 | 991 | sourceTree = "<group>"; |
| 979 | 992 | }; |
| 993 | + D2888D911E6EB897003A77C8 /* View */ = { | |
| 994 | + isa = PBXGroup; | |
| 995 | + children = ( | |
| 996 | + D2888D921E6EB8B4003A77C8 /* LVCTabBar.h */, | |
| 997 | + D2888D931E6EB8B4003A77C8 /* LVCTabBar.m */, | |
| 998 | + ); | |
| 999 | + path = View; | |
| 1000 | + sourceTree = "<group>"; | |
| 1001 | + }; | |
| 1002 | + D2888D951E6EBAA7003A77C8 /* LiveSections */ = { | |
| 1003 | + isa = PBXGroup; | |
| 1004 | + children = ( | |
| 1005 | + D2888D991E6EBF1B003A77C8 /* Controller */, | |
| 1006 | + D2888D9C1E6EBF1B003A77C8 /* Model */, | |
| 1007 | + D2888D9D1E6EBF1B003A77C8 /* View */, | |
| 1008 | + ); | |
| 1009 | + path = LiveSections; | |
| 1010 | + sourceTree = "<group>"; | |
| 1011 | + }; | |
| 1012 | + D2888D991E6EBF1B003A77C8 /* Controller */ = { | |
| 1013 | + isa = PBXGroup; | |
| 1014 | + children = ( | |
| 1015 | + D2888D9A1E6EBF1B003A77C8 /* LVCLiveViewController.h */, | |
| 1016 | + D2888D9B1E6EBF1B003A77C8 /* LVCLiveViewController.m */, | |
| 1017 | + ); | |
| 1018 | + path = Controller; | |
| 1019 | + sourceTree = "<group>"; | |
| 1020 | + }; | |
| 1021 | + D2888D9C1E6EBF1B003A77C8 /* Model */ = { | |
| 1022 | + isa = PBXGroup; | |
| 1023 | + children = ( | |
| 1024 | + ); | |
| 1025 | + path = Model; | |
| 1026 | + sourceTree = "<group>"; | |
| 1027 | + }; | |
| 1028 | + D2888D9D1E6EBF1B003A77C8 /* View */ = { | |
| 1029 | + isa = PBXGroup; | |
| 1030 | + children = ( | |
| 1031 | + ); | |
| 1032 | + path = View; | |
| 1033 | + sourceTree = "<group>"; | |
| 1034 | + }; | |
| 1035 | + D2888DA71E6EC014003A77C8 /* homeSections */ = { | |
| 1036 | + isa = PBXGroup; | |
| 1037 | + children = ( | |
| 1038 | + D2888DA81E6EC014003A77C8 /* Controller */, | |
| 1039 | + D2888DA91E6EC014003A77C8 /* Model */, | |
| 1040 | + D2888DAA1E6EC014003A77C8 /* View */, | |
| 1041 | + ); | |
| 1042 | + path = homeSections; | |
| 1043 | + sourceTree = "<group>"; | |
| 1044 | + }; | |
| 1045 | + D2888DA81E6EC014003A77C8 /* Controller */ = { | |
| 1046 | + isa = PBXGroup; | |
| 1047 | + children = ( | |
| 1048 | + D2888DB21E6EC154003A77C8 /* HomeViewController.h */, | |
| 1049 | + D2888DB31E6EC154003A77C8 /* HomeViewController.m */, | |
| 1050 | + ); | |
| 1051 | + path = Controller; | |
| 1052 | + sourceTree = "<group>"; | |
| 1053 | + }; | |
| 1054 | + D2888DA91E6EC014003A77C8 /* Model */ = { | |
| 1055 | + isa = PBXGroup; | |
| 1056 | + children = ( | |
| 1057 | + ); | |
| 1058 | + path = Model; | |
| 1059 | + sourceTree = "<group>"; | |
| 1060 | + }; | |
| 1061 | + D2888DAA1E6EC014003A77C8 /* View */ = { | |
| 1062 | + isa = PBXGroup; | |
| 1063 | + children = ( | |
| 1064 | + ); | |
| 1065 | + path = View; | |
| 1066 | + sourceTree = "<group>"; | |
| 1067 | + }; | |
| 1068 | + D2888DAB1E6EC014003A77C8 /* mySections */ = { | |
| 1069 | + isa = PBXGroup; | |
| 1070 | + children = ( | |
| 1071 | + D2888DAC1E6EC014003A77C8 /* Controller */, | |
| 1072 | + D2888DAD1E6EC014003A77C8 /* Model */, | |
| 1073 | + D2888DAE1E6EC014003A77C8 /* View */, | |
| 1074 | + ); | |
| 1075 | + path = mySections; | |
| 1076 | + sourceTree = "<group>"; | |
| 1077 | + }; | |
| 1078 | + D2888DAC1E6EC014003A77C8 /* Controller */ = { | |
| 1079 | + isa = PBXGroup; | |
| 1080 | + children = ( | |
| 1081 | + D2888DB51E6EC1B8003A77C8 /* LVCMyViewController.h */, | |
| 1082 | + D2888DB61E6EC1B8003A77C8 /* LVCMyViewController.m */, | |
| 1083 | + ); | |
| 1084 | + path = Controller; | |
| 1085 | + sourceTree = "<group>"; | |
| 1086 | + }; | |
| 1087 | + D2888DAD1E6EC014003A77C8 /* Model */ = { | |
| 1088 | + isa = PBXGroup; | |
| 1089 | + children = ( | |
| 1090 | + ); | |
| 1091 | + path = Model; | |
| 1092 | + sourceTree = "<group>"; | |
| 1093 | + }; | |
| 1094 | + D2888DAE1E6EC014003A77C8 /* View */ = { | |
| 1095 | + isa = PBXGroup; | |
| 1096 | + children = ( | |
| 1097 | + ); | |
| 1098 | + path = View; | |
| 1099 | + sourceTree = "<group>"; | |
| 1100 | + }; | |
| 980 | 1101 | /* End PBXGroup section */ |
| 981 | 1102 | |
| 982 | 1103 | /* Begin PBXNativeTarget section */ |
| ... | ... | @@ -1039,6 +1160,7 @@ |
| 1039 | 1160 | D2029B791E6EAAA50027CD92 /* Project object */ = { |
| 1040 | 1161 | isa = PBXProject; |
| 1041 | 1162 | attributes = { |
| 1163 | + CLASSPREFIX = LVC; | |
| 1042 | 1164 | LastUpgradeCheck = 0820; |
| 1043 | 1165 | ORGANIZATIONNAME = cnlive; |
| 1044 | 1166 | TargetAttributes = { |
| ... | ... | @@ -1140,6 +1262,7 @@ |
| 1140 | 1262 | D2029D161E6EB00D0027CD92 /* AppDelegate.m in Sources */, |
| 1141 | 1263 | D2029CB71E6EADE10027CD92 /* NSData+ImageContentType.m in Sources */, |
| 1142 | 1264 | D2029CD01E6EADE10027CD92 /* SearchPresenter.m in Sources */, |
| 1265 | + D2888DB71E6EC1B8003A77C8 /* LVCMyViewController.m in Sources */, | |
| 1143 | 1266 | D2029CBE1E6EADE10027CD92 /* SDWebImagePrefetcher.m in Sources */, |
| 1144 | 1267 | D2029CCE1E6EADE10027CD92 /* SearchRecomListModel.m in Sources */, |
| 1145 | 1268 | D2029CA11E6EADE10027CD92 /* NSString+MJExtension.m in Sources */, |
| ... | ... | @@ -1168,7 +1291,6 @@ |
| 1168 | 1291 | D2029C8B1E6EADE10027CD92 /* AFURLResponseSerialization.m in Sources */, |
| 1169 | 1292 | D2029C921E6EADE10027CD92 /* UIImageView+AFNetworking.m in Sources */, |
| 1170 | 1293 | D2029C9E1E6EADE10027CD92 /* NSObject+MJCoding.m in Sources */, |
| 1171 | - D2029B8C1E6EAAA50027CD92 /* ViewController.m in Sources */, | |
| 1172 | 1294 | D2029C991E6EADE10027CD92 /* MJFoundation.m in Sources */, |
| 1173 | 1295 | D2029C8A1E6EADE10027CD92 /* AFURLRequestSerialization.m in Sources */, |
| 1174 | 1296 | D2029D041E6EAE2E0027CD92 /* UILabel+ContentSize.m in Sources */, |
| ... | ... | @@ -1176,6 +1298,7 @@ |
| 1176 | 1298 | D2029B861E6EAAA50027CD92 /* main.m in Sources */, |
| 1177 | 1299 | D2029C8C1E6EADE10027CD92 /* AFURLSessionManager.m in Sources */, |
| 1178 | 1300 | D2029C9F1E6EADE10027CD92 /* NSObject+MJKeyValue.m in Sources */, |
| 1301 | + D2888DB11E6EC05F003A77C8 /* TempViewController.m in Sources */, | |
| 1179 | 1302 | D2029CAC1E6EADE10027CD92 /* MJRefreshBackStateFooter.m in Sources */, |
| 1180 | 1303 | D2029CB11E6EADE10027CD92 /* MJRefreshConst.m in Sources */, |
| 1181 | 1304 | D2029CAD1E6EADE10027CD92 /* MJRefreshGifHeader.m in Sources */, |
| ... | ... | @@ -1184,7 +1307,6 @@ |
| 1184 | 1307 | D2029CB21E6EADE10027CD92 /* UIScrollView+MJExtension.m in Sources */, |
| 1185 | 1308 | D2029D091E6EAE2E0027CD92 /* Foundation+Log.m in Sources */, |
| 1186 | 1309 | D2029C8E1E6EADE10027CD92 /* AFImageDownloader.m in Sources */, |
| 1187 | - D2029CCC1E6EADE10027CD92 /* HomeViewController.m in Sources */, | |
| 1188 | 1310 | D2029BCA1E6EADD70027CD92 /* BaseModel.m in Sources */, |
| 1189 | 1311 | D2029D031E6EAE2E0027CD92 /* UIImage+ZXExtension.m in Sources */, |
| 1190 | 1312 | D2029D0A1E6EAE2E0027CD92 /* ZXServerUrl.m in Sources */, |
| ... | ... | @@ -1196,6 +1318,7 @@ |
| 1196 | 1318 | D2029CC21E6EADE10027CD92 /* UIImage+WebP.m in Sources */, |
| 1197 | 1319 | D2029BCD1E6EADD70027CD92 /* BaseViewController.m in Sources */, |
| 1198 | 1320 | D2029D001E6EAE2E0027CD92 /* NSNumber+ScaleHeight.m in Sources */, |
| 1321 | + D2888D9E1E6EBF1B003A77C8 /* LVCLiveViewController.m in Sources */, | |
| 1199 | 1322 | D2029C951E6EADE10027CD92 /* UIWebView+AFNetworking.m in Sources */, |
| 1200 | 1323 | D2029CBD1E6EADE10027CD92 /* SDWebImageManager.m in Sources */, |
| 1201 | 1324 | D2029CB41E6EADE10027CD92 /* UIView+MJExtension.m in Sources */, |
| ... | ... | @@ -1206,6 +1329,8 @@ |
| 1206 | 1329 | D2029C881E6EADE10027CD92 /* AFNetworkReachabilityManager.m in Sources */, |
| 1207 | 1330 | D2029D021E6EAE2E0027CD92 /* UIImage+ScaleImageSize.m in Sources */, |
| 1208 | 1331 | D2029BCC1E6EADD70027CD92 /* BaseView.m in Sources */, |
| 1332 | + D2888D941E6EB8B4003A77C8 /* LVCTabBar.m in Sources */, | |
| 1333 | + D2888DB41E6EC154003A77C8 /* HomeViewController.m in Sources */, | |
| 1209 | 1334 | D2029CD41E6EADE70027CD92 /* HttpService.m in Sources */, |
| 1210 | 1335 | ); |
| 1211 | 1336 | runOnlyForDeploymentPostprocessing = 0; | ... | ... |
LiveVideoCloud/LiveVideoCloud/AppCustoms/Main/View/LVCTabBar.h
0 → 100644
| 1 | +// | |
| 2 | +// LVCTabBar.h | |
| 3 | +// LiveVideoCloud | |
| 4 | +// | |
| 5 | +// Created by 张旭 on 2017/3/7. | |
| 6 | +// Copyright © 2017年 cnlive. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#import <UIKit/UIKit.h> | |
| 10 | + | |
| 11 | +@class LVCTabBar; | |
| 12 | + | |
| 13 | +@protocol LVCTabBarDelegate <NSObject> | |
| 14 | + | |
| 15 | +-(void)liveBtnClick:(LVCTabBar *)tabBar; | |
| 16 | + | |
| 17 | +@end | |
| 18 | + | |
| 19 | +@interface LVCTabBar : UITabBar | |
| 20 | + | |
| 21 | +@property (nonatomic,weak) id<LVCTabBarDelegate> LVCTabBarDelegate; | |
| 22 | + | |
| 23 | +@end | ... | ... |
LiveVideoCloud/LiveVideoCloud/AppCustoms/Main/View/LVCTabBar.m
0 → 100644
| 1 | + | |
| 2 | +// | |
| 3 | +// LVCTabBar.m | |
| 4 | +// LiveVideoCloud | |
| 5 | +// | |
| 6 | +// Created by 张旭 on 2017/3/7. | |
| 7 | +// Copyright © 2017年 cnlive. All rights reserved. | |
| 8 | +// | |
| 9 | + | |
| 10 | +#import "LVCTabBar.h" | |
| 11 | +#import "UIView+Extension.h" | |
| 12 | + | |
| 13 | +@interface LVCTabBar() | |
| 14 | + | |
| 15 | +@property (nonatomic ,strong)UIButton *liveBtn; | |
| 16 | + | |
| 17 | +@end | |
| 18 | + | |
| 19 | +@implementation LVCTabBar | |
| 20 | + | |
| 21 | +- (instancetype)initWithFrame:(CGRect)frame | |
| 22 | +{ | |
| 23 | + if (self = [super initWithFrame:frame]) { | |
| 24 | + | |
| 25 | + // self.backgroundImage = [UIImage imageNamed:@""]; | |
| 26 | + } | |
| 27 | + return self; | |
| 28 | +} | |
| 29 | + | |
| 30 | +- (UIButton *)liveBtn | |
| 31 | +{ | |
| 32 | + if (!_liveBtn) { | |
| 33 | + | |
| 34 | + _liveBtn = [UIButton buttonWithType:UIButtonTypeCustom]; | |
| 35 | + [_liveBtn setImage:[UIImage imageNamed:@"Begin to live"] forState:UIControlStateNormal]; | |
| 36 | + [_liveBtn addTarget:self action:@selector(liveBtnClick) forControlEvents:UIControlEventTouchUpInside]; | |
| 37 | + [self addSubview:_liveBtn]; | |
| 38 | + } | |
| 39 | + return _liveBtn; | |
| 40 | +} | |
| 41 | + | |
| 42 | +- (void)layoutSubviews | |
| 43 | +{ | |
| 44 | + [super layoutSubviews]; | |
| 45 | + | |
| 46 | + self.liveBtn.top = self.height - 195 / 3; | |
| 47 | + _liveBtn.left = SCREEN_WIDTH * 0.5 - 195 / 6; | |
| 48 | + _liveBtn.width = 195 / 3; | |
| 49 | + _liveBtn.height = 195 / 3; | |
| 50 | + | |
| 51 | + CGFloat buttonY = 19 - 3;//19 - 3.5; | |
| 52 | + CGFloat buttonW = (self.width - 195 / 3)/ 2; | |
| 53 | + CGFloat buttonH = 30; | |
| 54 | + | |
| 55 | + NSInteger index = 0; | |
| 56 | + for (UIView *subView in self.subviews) { | |
| 57 | + if(subView.class != NSClassFromString(@"UITabBarButton"))continue; | |
| 58 | + | |
| 59 | + CGFloat buttonX = index * buttonW; | |
| 60 | + if (index >= 1) | |
| 61 | + { | |
| 62 | + buttonX += 195 / 3; | |
| 63 | + } | |
| 64 | + | |
| 65 | + subView.frame = CGRectMake(buttonX, buttonY, buttonW, buttonH); | |
| 66 | + // 增加索引 | |
| 67 | + index++; | |
| 68 | + } | |
| 69 | +} | |
| 70 | + | |
| 71 | +//直播按钮点击事件 | |
| 72 | +- (void)liveBtnClick | |
| 73 | +{ | |
| 74 | + if([self.LVCTabBarDelegate respondsToSelector:@selector(liveBtnClick:)]) | |
| 75 | + { | |
| 76 | + [self.LVCTabBarDelegate liveBtnClick:self]; | |
| 77 | + } | |
| 78 | +} | |
| 79 | +@end | ... | ... |
LiveVideoCloud/LiveVideoCloud/AppCustoms/Main/ZXNavigationController.m
| ... | ... | @@ -22,7 +22,7 @@ |
| 22 | 22 | self.interactivePopGestureRecognizer.delegate = self; |
| 23 | 23 | self.interactivePopGestureRecognizer.enabled = YES; |
| 24 | 24 | |
| 25 | - [[UINavigationBar appearance] setBarTintColor:[UIColor whiteColor]]; | |
| 25 | + [[UINavigationBar appearance] setBarTintColor:[UIColor blackColorZX]]; | |
| 26 | 26 | } |
| 27 | 27 | |
| 28 | 28 | /** | ... | ... |
LiveVideoCloud/LiveVideoCloud/AppCustoms/Main/ZXTabBarController.m
| ... | ... | @@ -9,8 +9,11 @@ |
| 9 | 9 | #import "ZXTabBarController.h" |
| 10 | 10 | #import "ZXNavigationController.h" |
| 11 | 11 | #import "HomeViewController.h" |
| 12 | +#import "LVCLiveViewController.h" | |
| 13 | +#import "LVCMyViewController.h" | |
| 14 | +#import "LVCTabBar.h" | |
| 12 | 15 | |
| 13 | -@interface ZXTabBarController () | |
| 16 | +@interface ZXTabBarController ()<LVCTabBarDelegate> | |
| 14 | 17 | |
| 15 | 18 | @end |
| 16 | 19 | |
| ... | ... | @@ -20,12 +23,13 @@ |
| 20 | 23 | [super viewDidLoad]; |
| 21 | 24 | // Do any additional setup after loading the view. |
| 22 | 25 | |
| 23 | - [[UITabBar appearance] setBarTintColor:[UIColor whiteColor]]; | |
| 26 | + [[UITabBar appearance] setBarTintColor:[UIColor blackColorZX]]; | |
| 24 | 27 | //取消tabBar的透明效果 |
| 25 | 28 | [UITabBar appearance].translucent = NO; |
| 26 | 29 | |
| 27 | 30 | [self setupItemTitleTextAttributes]; |
| 28 | 31 | [self createUI]; |
| 32 | + [self setTabBar]; | |
| 29 | 33 | } |
| 30 | 34 | |
| 31 | 35 | - (void)setupItemTitleTextAttributes |
| ... | ... | @@ -44,7 +48,8 @@ |
| 44 | 48 | |
| 45 | 49 | - (void)createUI |
| 46 | 50 | { |
| 47 | - [self setupOneChildViewController:[[ZXNavigationController alloc]initWithRootViewController:[[HomeViewController alloc]init]] title:@"首页" image:@"home page" selectedImage:@"home page-click on"]; | |
| 51 | + [self setupOneChildViewController:[[ZXNavigationController alloc]initWithRootViewController:[[HomeViewController alloc]init]] title:@"" image:@"home page" selectedImage:@"home page-click on"]; | |
| 52 | + [self setupOneChildViewController:[[ZXNavigationController alloc]initWithRootViewController:[[LVCMyViewController alloc]init]] title:@"" image:@"my" selectedImage:@"my-click on"]; | |
| 48 | 53 | } |
| 49 | 54 | |
| 50 | 55 | - (void)setupOneChildViewController:(UIViewController *)vc title:(NSString *)title image:(NSString *)image selectedImage:(NSString *)selectedImage |
| ... | ... | @@ -61,6 +66,31 @@ |
| 61 | 66 | [self addChildViewController:vc]; |
| 62 | 67 | } |
| 63 | 68 | |
| 69 | +- (void)setTabBar | |
| 70 | +{ | |
| 71 | + LVCTabBar *tabbar = [[LVCTabBar alloc] init]; | |
| 72 | + [self setValue:tabbar forKeyPath:@"tabBar"]; | |
| 73 | + tabbar.LVCTabBarDelegate = self; | |
| 74 | +} | |
| 75 | + | |
| 76 | + | |
| 77 | +#pragma mark - LVCTabBarDelegate | |
| 78 | + | |
| 79 | +-(void)liveBtnClick:(LVCTabBar *)tabBar | |
| 80 | +{ | |
| 81 | +// if ([UserTools isLogin]) { | |
| 82 | + LVCLiveViewController *liveCtrl = [[LVCLiveViewController alloc] init]; | |
| 83 | + [self presentViewController:liveCtrl animated:YES completion:nil]; | |
| 84 | +// }else { | |
| 85 | +// LoginViewController *loginCtrl = [[LoginViewController alloc] init]; | |
| 86 | +// ZXNavigationController *navCtrl = [[ZXNavigationController alloc] initWithRootViewController:loginCtrl]; | |
| 87 | +// loginCtrl.isModalButton = YES; | |
| 88 | +// [self presentViewController:navCtrl animated:YES completion:NULL]; | |
| 89 | +// } | |
| 90 | + | |
| 91 | +} | |
| 92 | + | |
| 93 | + | |
| 64 | 94 | -(BOOL)shouldAutorotate{ |
| 65 | 95 | return NO; |
| 66 | 96 | } | ... | ... |
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/AppIcon.appiconset/Contents.json
| ... | ... | @@ -2,6 +2,16 @@ |
| 2 | 2 | "images" : [ |
| 3 | 3 | { |
| 4 | 4 | "idiom" : "iphone", |
| 5 | + "size" : "20x20", | |
| 6 | + "scale" : "2x" | |
| 7 | + }, | |
| 8 | + { | |
| 9 | + "idiom" : "iphone", | |
| 10 | + "size" : "20x20", | |
| 11 | + "scale" : "3x" | |
| 12 | + }, | |
| 13 | + { | |
| 14 | + "idiom" : "iphone", | |
| 5 | 15 | "size" : "29x29", |
| 6 | 16 | "scale" : "2x" |
| 7 | 17 | }, |
| ... | ... | @@ -32,6 +42,16 @@ |
| 32 | 42 | }, |
| 33 | 43 | { |
| 34 | 44 | "idiom" : "ipad", |
| 45 | + "size" : "20x20", | |
| 46 | + "scale" : "1x" | |
| 47 | + }, | |
| 48 | + { | |
| 49 | + "idiom" : "ipad", | |
| 50 | + "size" : "20x20", | |
| 51 | + "scale" : "2x" | |
| 52 | + }, | |
| 53 | + { | |
| 54 | + "idiom" : "ipad", | |
| 35 | 55 | "size" : "29x29", |
| 36 | 56 | "scale" : "1x" |
| 37 | 57 | }, |
| ... | ... | @@ -59,6 +79,11 @@ |
| 59 | 79 | "idiom" : "ipad", |
| 60 | 80 | "size" : "76x76", |
| 61 | 81 | "scale" : "2x" |
| 82 | + }, | |
| 83 | + { | |
| 84 | + "idiom" : "ipad", | |
| 85 | + "size" : "83.5x83.5", | |
| 86 | + "scale" : "2x" | |
| 62 | 87 | } |
| 63 | 88 | ], |
| 64 | 89 | "info" : { | ... | ... |
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/Begin to live.imageset/Begin to live.png
0 → 100644
11.6 KB
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/Begin to live.imageset/Contents.json
0 → 100644
| 1 | +{ | |
| 2 | + "images" : [ | |
| 3 | + { | |
| 4 | + "idiom" : "universal", | |
| 5 | + "filename" : "Begin to live.png", | |
| 6 | + "scale" : "1x" | |
| 7 | + }, | |
| 8 | + { | |
| 9 | + "idiom" : "universal", | |
| 10 | + "scale" : "2x" | |
| 11 | + }, | |
| 12 | + { | |
| 13 | + "idiom" : "universal", | |
| 14 | + "scale" : "3x" | |
| 15 | + } | |
| 16 | + ], | |
| 17 | + "info" : { | |
| 18 | + "version" : 1, | |
| 19 | + "author" : "xcode" | |
| 20 | + }, | |
| 21 | + "properties" : { | |
| 22 | + "template-rendering-intent" : "original" | |
| 23 | + } | |
| 24 | +} | |
| 0 | 25 | \ No newline at end of file | ... | ... |
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/Contents.json
0 → 100644
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/home page-click on.imageset/Contents.json
0 → 100644
| 1 | +{ | |
| 2 | + "images" : [ | |
| 3 | + { | |
| 4 | + "idiom" : "universal", | |
| 5 | + "scale" : "1x" | |
| 6 | + }, | |
| 7 | + { | |
| 8 | + "idiom" : "universal", | |
| 9 | + "scale" : "2x" | |
| 10 | + }, | |
| 11 | + { | |
| 12 | + "idiom" : "universal", | |
| 13 | + "filename" : "home page-click on.png", | |
| 14 | + "scale" : "3x" | |
| 15 | + } | |
| 16 | + ], | |
| 17 | + "info" : { | |
| 18 | + "version" : 1, | |
| 19 | + "author" : "xcode" | |
| 20 | + }, | |
| 21 | + "properties" : { | |
| 22 | + "template-rendering-intent" : "original" | |
| 23 | + } | |
| 24 | +} | |
| 0 | 25 | \ No newline at end of file | ... | ... |
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/home page-click on.imageset/home page-click on.png
0 → 100644
2.93 KB
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/home page.imageset/Contents.json
0 → 100644
| 1 | +{ | |
| 2 | + "images" : [ | |
| 3 | + { | |
| 4 | + "idiom" : "universal", | |
| 5 | + "scale" : "1x" | |
| 6 | + }, | |
| 7 | + { | |
| 8 | + "idiom" : "universal", | |
| 9 | + "scale" : "2x" | |
| 10 | + }, | |
| 11 | + { | |
| 12 | + "idiom" : "universal", | |
| 13 | + "filename" : "home page.png", | |
| 14 | + "scale" : "3x" | |
| 15 | + } | |
| 16 | + ], | |
| 17 | + "info" : { | |
| 18 | + "version" : 1, | |
| 19 | + "author" : "xcode" | |
| 20 | + }, | |
| 21 | + "properties" : { | |
| 22 | + "template-rendering-intent" : "original" | |
| 23 | + } | |
| 24 | +} | |
| 0 | 25 | \ No newline at end of file | ... | ... |
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/home page.imageset/home page.png
0 → 100644
2.68 KB
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/my-click on.imageset/Contents.json
0 → 100644
| 1 | +{ | |
| 2 | + "images" : [ | |
| 3 | + { | |
| 4 | + "idiom" : "universal", | |
| 5 | + "scale" : "1x" | |
| 6 | + }, | |
| 7 | + { | |
| 8 | + "idiom" : "universal", | |
| 9 | + "scale" : "2x" | |
| 10 | + }, | |
| 11 | + { | |
| 12 | + "idiom" : "universal", | |
| 13 | + "filename" : "my-click on.png", | |
| 14 | + "scale" : "3x" | |
| 15 | + } | |
| 16 | + ], | |
| 17 | + "info" : { | |
| 18 | + "version" : 1, | |
| 19 | + "author" : "xcode" | |
| 20 | + }, | |
| 21 | + "properties" : { | |
| 22 | + "template-rendering-intent" : "original" | |
| 23 | + } | |
| 24 | +} | |
| 0 | 25 | \ No newline at end of file | ... | ... |
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/my-click on.imageset/my-click on.png
0 → 100644
3.01 KB
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/my.imageset/Contents.json
0 → 100644
| 1 | +{ | |
| 2 | + "images" : [ | |
| 3 | + { | |
| 4 | + "idiom" : "universal", | |
| 5 | + "scale" : "1x" | |
| 6 | + }, | |
| 7 | + { | |
| 8 | + "idiom" : "universal", | |
| 9 | + "scale" : "2x" | |
| 10 | + }, | |
| 11 | + { | |
| 12 | + "idiom" : "universal", | |
| 13 | + "filename" : "my.png", | |
| 14 | + "scale" : "3x" | |
| 15 | + } | |
| 16 | + ], | |
| 17 | + "info" : { | |
| 18 | + "version" : 1, | |
| 19 | + "author" : "xcode" | |
| 20 | + }, | |
| 21 | + "properties" : { | |
| 22 | + "template-rendering-intent" : "original" | |
| 23 | + } | |
| 24 | +} | |
| 0 | 25 | \ No newline at end of file | ... | ... |
LiveVideoCloud/LiveVideoCloud/Assets.xcassets/my.imageset/my.png
0 → 100644
2.89 KB
LiveVideoCloud/LiveVideoCloud/ViewController.h renamed to LiveVideoCloud/LiveVideoCloud/Classes/Sections/LiveSections/Controller/LVCLiveViewController.h
| 1 | 1 | // |
| 2 | -// ViewController.h | |
| 2 | +// LVCLiveViewController.h | |
| 3 | 3 | // LiveVideoCloud |
| 4 | 4 | // |
| 5 | 5 | // Created by 张旭 on 2017/3/7. |
| 6 | 6 | // Copyright © 2017年 cnlive. All rights reserved. |
| 7 | 7 | // |
| 8 | 8 | |
| 9 | -#import <UIKit/UIKit.h> | |
| 10 | - | |
| 11 | -@interface ViewController : UIViewController | |
| 9 | +#import "BaseViewController.h" | |
| 12 | 10 | |
| 11 | +@interface LVCLiveViewController : BaseViewController | |
| 13 | 12 | |
| 14 | 13 | @end |
| 15 | - | ... | ... |
LiveVideoCloud/LiveVideoCloud/Classes/Sections/LiveSections/Controller/LVCLiveViewController.m
0 → 100644
| 1 | +// | |
| 2 | +// LVCLiveViewController.m | |
| 3 | +// LiveVideoCloud | |
| 4 | +// | |
| 5 | +// Created by 张旭 on 2017/3/7. | |
| 6 | +// Copyright © 2017年 cnlive. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#import "LVCLiveViewController.h" | |
| 10 | + | |
| 11 | +@interface LVCLiveViewController () | |
| 12 | + | |
| 13 | +@end | |
| 14 | + | |
| 15 | +@implementation LVCLiveViewController | |
| 16 | + | |
| 17 | +- (void)viewDidLoad { | |
| 18 | + [super viewDidLoad]; | |
| 19 | + // Do any additional setup after loading the view. | |
| 20 | + self.view.backgroundColor = [UIColor blueColor]; | |
| 21 | + | |
| 22 | + UIButton *closeBtn = [[UIButton alloc] initWithFrame:CGRectMake(SCREEN_WIDTH - 50, 30, 50, 30)]; | |
| 23 | + [closeBtn setTitle:@"关闭" forState:UIControlStateNormal]; | |
| 24 | + [closeBtn addTarget:self action:@selector(closeBtnClivk) forControlEvents:UIControlEventTouchUpInside]; | |
| 25 | + [self.view addSubview:closeBtn]; | |
| 26 | +} | |
| 27 | + | |
| 28 | +- (void)closeBtnClivk | |
| 29 | +{ | |
| 30 | + [self dismissViewControllerAnimated:YES completion:nil]; | |
| 31 | +} | |
| 32 | + | |
| 33 | +- (void)didReceiveMemoryWarning { | |
| 34 | + [super didReceiveMemoryWarning]; | |
| 35 | + // Dispose of any resources that can be recreated. | |
| 36 | +} | |
| 37 | + | |
| 38 | +/* | |
| 39 | +#pragma mark - Navigation | |
| 40 | + | |
| 41 | +// In a storyboard-based application, you will often want to do a little preparation before navigation | |
| 42 | +- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { | |
| 43 | + // Get the new view controller using [segue destinationViewController]. | |
| 44 | + // Pass the selected object to the new view controller. | |
| 45 | +} | |
| 46 | +*/ | |
| 47 | + | |
| 48 | +@end | ... | ... |
LiveVideoCloud/LiveVideoCloud/Classes/Sections/ZXSections/Home/Controller/TempViewController.h
0 → 100644
LiveVideoCloud/LiveVideoCloud/Classes/Sections/ZXSections/Home/Controller/HomeViewController.m renamed to LiveVideoCloud/LiveVideoCloud/Classes/Sections/ZXSections/Home/Controller/TempViewController.m
| 1 | 1 | // |
| 2 | -// HomeViewController.m | |
| 3 | -// ZXBaseProject | |
| 2 | +// TempViewController.m | |
| 3 | +// LiveVideoCloud | |
| 4 | 4 | // |
| 5 | -// Created by 张旭 on 2017/1/10. | |
| 5 | +// Created by 张旭 on 2017/3/7. | |
| 6 | 6 | // Copyright © 2017年 cnlive. All rights reserved. |
| 7 | 7 | // |
| 8 | 8 | |
| 9 | -#import "HomeViewController.h" | |
| 9 | +#import "TempViewController.h" | |
| 10 | 10 | #import "SearchPresenter.h" |
| 11 | 11 | //#import "SearchHttp.h" |
| 12 | 12 | //#import "SearchModel.h" |
| 13 | 13 | //#import "SearchRecomListModel.h" |
| 14 | - | |
| 15 | -@interface HomeViewController () | |
| 14 | +@interface TempViewController () | |
| 16 | 15 | |
| 17 | 16 | @property (nonatomic ,strong) SearchPresenter *presenter; |
| 18 | 17 | |
| 19 | 18 | @end |
| 20 | 19 | |
| 21 | -@implementation HomeViewController | |
| 20 | +@implementation TempViewController | |
| 22 | 21 | |
| 23 | 22 | - (void)viewDidLoad { |
| 24 | 23 | [super viewDidLoad]; |
| ... | ... | @@ -28,7 +27,7 @@ |
| 28 | 27 | |
| 29 | 28 | - (void)touchesBegan:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event |
| 30 | 29 | { |
| 31 | - HomeViewController *vc = [HomeViewController new]; | |
| 30 | + TempViewController *vc = [TempViewController new]; | |
| 32 | 31 | vc.view.backgroundColor = ZXRandomColor; |
| 33 | 32 | [self.navigationController pushViewController:vc animated:YES]; |
| 34 | 33 | } |
| ... | ... | @@ -42,11 +41,6 @@ |
| 42 | 41 | }]; |
| 43 | 42 | } |
| 44 | 43 | |
| 45 | -- (void)didReceiveMemoryWarning { | |
| 46 | - [super didReceiveMemoryWarning]; | |
| 47 | - // Dispose of any resources that can be recreated. | |
| 48 | -} | |
| 49 | - | |
| 50 | 44 | - (SearchPresenter *)presenter |
| 51 | 45 | { |
| 52 | 46 | if (!_presenter) |
| ... | ... | @@ -55,6 +49,13 @@ |
| 55 | 49 | } |
| 56 | 50 | return _presenter; |
| 57 | 51 | } |
| 52 | + | |
| 53 | + | |
| 54 | +- (void)didReceiveMemoryWarning { | |
| 55 | + [super didReceiveMemoryWarning]; | |
| 56 | + // Dispose of any resources that can be recreated. | |
| 57 | +} | |
| 58 | + | |
| 58 | 59 | /* |
| 59 | 60 | #pragma mark - Navigation |
| 60 | 61 | ... | ... |
LiveVideoCloud/LiveVideoCloud/Classes/Sections/ZXSections/Home/Controller/HomeViewController.h renamed to LiveVideoCloud/LiveVideoCloud/Classes/Sections/homeSections/Controller/HomeViewController.h
LiveVideoCloud/LiveVideoCloud/Classes/Sections/homeSections/Controller/HomeViewController.m
0 → 100644
| 1 | +// | |
| 2 | +// HomeViewController.m | |
| 3 | +// ZXBaseProject | |
| 4 | +// | |
| 5 | +// Created by 张旭 on 2017/1/10. | |
| 6 | +// Copyright © 2017年 cnlive. All rights reserved. | |
| 7 | +// | |
| 8 | + | |
| 9 | +#import "HomeViewController.h" | |
| 10 | + | |
| 11 | +@interface HomeViewController () | |
| 12 | + | |
| 13 | + | |
| 14 | +@end | |
| 15 | + | |
| 16 | +@implementation HomeViewController | |
| 17 | + | |
| 18 | +- (void)viewDidLoad { | |
| 19 | + [super viewDidLoad]; | |
| 20 | + // Do any additional setup after loading the view. | |
| 21 | + self.view.backgroundColor = [UIColor redColor]; | |
| 22 | + self.navigationItem.title = @"首页"; | |
| 23 | +} | |
| 24 | + | |
| 25 | +- (void)didReceiveMemoryWarning { | |
| 26 | + [super didReceiveMemoryWarning]; | |
| 27 | + // Dispose of any resources that can be recreated. | |
| 28 | +} | |
| 29 | + | |
| 30 | +/* | |
| 31 | +#pragma mark - Navigation | |
| 32 | + | |
| 33 | +// In a storyboard-based application, you will often want to do a little preparation before navigation | |
| 34 | +- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { | |
| 35 | + // Get the new view controller using [segue destinationViewController]. | |
| 36 | + // Pass the selected object to the new view controller. | |
| 37 | +} | |
| 38 | +*/ | |
| 39 | + | |
| 40 | +@end | ... | ... |
LiveVideoCloud/LiveVideoCloud/Classes/Sections/mySections/Controller/LVCMyViewController.h
0 → 100644
LiveVideoCloud/LiveVideoCloud/ViewController.m renamed to LiveVideoCloud/LiveVideoCloud/Classes/Sections/mySections/Controller/LVCMyViewController.m
| 1 | 1 | // |
| 2 | -// ViewController.m | |
| 2 | +// LVCMyViewController.m | |
| 3 | 3 | // LiveVideoCloud |
| 4 | 4 | // |
| 5 | 5 | // Created by 张旭 on 2017/3/7. |
| 6 | 6 | // Copyright © 2017年 cnlive. All rights reserved. |
| 7 | 7 | // |
| 8 | 8 | |
| 9 | -#import "ViewController.h" | |
| 9 | +#import "LVCMyViewController.h" | |
| 10 | 10 | |
| 11 | -@interface ViewController () | |
| 11 | +@interface LVCMyViewController () | |
| 12 | 12 | |
| 13 | 13 | @end |
| 14 | 14 | |
| 15 | -@implementation ViewController | |
| 15 | +@implementation LVCMyViewController | |
| 16 | 16 | |
| 17 | 17 | - (void)viewDidLoad { |
| 18 | 18 | [super viewDidLoad]; |
| 19 | - // Do any additional setup after loading the view, typically from a nib. | |
| 20 | - | |
| 19 | + // Do any additional setup after loading the view. | |
| 20 | + self.view.backgroundColor = [UIColor whiteColor]; | |
| 21 | + self.navigationItem.title = @"我的"; | |
| 21 | 22 | } |
| 22 | 23 | |
| 23 | - | |
| 24 | 24 | - (void)didReceiveMemoryWarning { |
| 25 | 25 | [super didReceiveMemoryWarning]; |
| 26 | 26 | // Dispose of any resources that can be recreated. |
| 27 | 27 | } |
| 28 | 28 | |
| 29 | +/* | |
| 30 | +#pragma mark - Navigation | |
| 31 | + | |
| 32 | +// In a storyboard-based application, you will often want to do a little preparation before navigation | |
| 33 | +- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { | |
| 34 | + // Get the new view controller using [segue destinationViewController]. | |
| 35 | + // Pass the selected object to the new view controller. | |
| 36 | +} | |
| 37 | +*/ | |
| 29 | 38 | |
| 30 | 39 | @end | ... | ... |