Commit 65f6fb0eae5979f9c7d2e4558aaea7a523f34044

Authored by 朱林
1 parent 363373d2

no message

Showing 46 changed files with 389 additions and 337 deletions
LiveVideoCloud.xcodeproj/project.pbxproj
@@ -67,8 +67,6 @@ @@ -67,8 +67,6 @@
67 4BD856151EBAD31A0082061D /* NSString+UrlEncode.m in Sources */ = {isa = PBXBuildFile; fileRef = 4BD856141EBAD31A0082061D /* NSString+UrlEncode.m */; }; 67 4BD856151EBAD31A0082061D /* NSString+UrlEncode.m in Sources */ = {isa = PBXBuildFile; fileRef = 4BD856141EBAD31A0082061D /* NSString+UrlEncode.m */; };
68 4BD856181EBAD35C0082061D /* NSDictionary+Safety.m in Sources */ = {isa = PBXBuildFile; fileRef = 4BD856171EBAD35C0082061D /* NSDictionary+Safety.m */; }; 68 4BD856181EBAD35C0082061D /* NSDictionary+Safety.m in Sources */ = {isa = PBXBuildFile; fileRef = 4BD856171EBAD35C0082061D /* NSDictionary+Safety.m */; };
69 4BD8561D1EBAD6490082061D /* ZXConst.m in Sources */ = {isa = PBXBuildFile; fileRef = 4BD8561C1EBAD6490082061D /* ZXConst.m */; }; 69 4BD8561D1EBAD6490082061D /* ZXConst.m in Sources */ = {isa = PBXBuildFile; fileRef = 4BD8561C1EBAD6490082061D /* ZXConst.m */; };
70 - 810B64E01E779AE900133E15 /* LVCPlayer.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64DF1E779AE900133E15 /* LVCPlayer.m */; };  
71 - 810B64E31E779AFE00133E15 /* LVCLivePlayerController.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64E21E779AFE00133E15 /* LVCLivePlayerController.m */; };  
72 810B64FE1E779B1F00133E15 /* MASCompositeConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64E61E779B1F00133E15 /* MASCompositeConstraint.m */; }; 70 810B64FE1E779B1F00133E15 /* MASCompositeConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64E61E779B1F00133E15 /* MASCompositeConstraint.m */; };
73 810B64FF1E779B1F00133E15 /* MASConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64E91E779B1F00133E15 /* MASConstraint.m */; }; 71 810B64FF1E779B1F00133E15 /* MASConstraint.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64E91E779B1F00133E15 /* MASConstraint.m */; };
74 810B65001E779B1F00133E15 /* MASConstraintMaker.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64EB1E779B1F00133E15 /* MASConstraintMaker.m */; }; 72 810B65001E779B1F00133E15 /* MASConstraintMaker.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64EB1E779B1F00133E15 /* MASConstraintMaker.m */; };
@@ -79,31 +77,33 @@ @@ -79,31 +77,33 @@
79 810B65051E779B1F00133E15 /* NSLayoutConstraint+MASDebugAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64F81E779B1F00133E15 /* NSLayoutConstraint+MASDebugAdditions.m */; }; 77 810B65051E779B1F00133E15 /* NSLayoutConstraint+MASDebugAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64F81E779B1F00133E15 /* NSLayoutConstraint+MASDebugAdditions.m */; };
80 810B65061E779B1F00133E15 /* View+MASAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64FA1E779B1F00133E15 /* View+MASAdditions.m */; }; 78 810B65061E779B1F00133E15 /* View+MASAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64FA1E779B1F00133E15 /* View+MASAdditions.m */; };
81 810B65071E779B1F00133E15 /* ViewController+MASAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64FD1E779B1F00133E15 /* ViewController+MASAdditions.m */; }; 79 810B65071E779B1F00133E15 /* ViewController+MASAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B64FD1E779B1F00133E15 /* ViewController+MASAdditions.m */; };
82 - 810B650A1E77B39D00133E15 /* LVCFullScreenPlayerController.m in Sources */ = {isa = PBXBuildFile; fileRef = 810B65091E77B39D00133E15 /* LVCFullScreenPlayerController.m */; };  
83 - 8112D4311E7927A5002E00F6 /* LVCPlayerLoadingView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8112D4301E7927A5002E00F6 /* LVCPlayerLoadingView.m */; };  
84 - 811BB6801E80F858005C6291 /* LVCChatView.m in Sources */ = {isa = PBXBuildFile; fileRef = 811BB67D1E80F858005C6291 /* LVCChatView.m */; };  
85 - 811BB6881E8107B4005C6291 /* LVCChatViewTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 811BB6871E8107B4005C6291 /* LVCChatViewTableViewCell.m */; };  
86 811BB68E1E8116C8005C6291 /* NSString+StringSize.m in Sources */ = {isa = PBXBuildFile; fileRef = 811BB68D1E8116C8005C6291 /* NSString+StringSize.m */; }; 80 811BB68E1E8116C8005C6291 /* NSString+StringSize.m in Sources */ = {isa = PBXBuildFile; fileRef = 811BB68D1E8116C8005C6291 /* NSString+StringSize.m */; };
87 - 8128E2881E8A6A3600B40E75 /* CNBarrageManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8128E2851E8A6A3600B40E75 /* CNBarrageManager.m */; };  
88 - 8128E2891E8A6A3600B40E75 /* CNBarrageView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8128E2871E8A6A3600B40E75 /* CNBarrageView.m */; };  
89 - 8130911E1E84C0F0005F0BFF /* LVCMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8130911D1E84C0F0005F0BFF /* LVCMessage.m */; };  
90 8178D4171F01FA2900AA78A4 /* CNLivePlayerSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8178D4161F01FA2900AA78A4 /* CNLivePlayerSDK.framework */; }; 81 8178D4171F01FA2900AA78A4 /* CNLivePlayerSDK.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8178D4161F01FA2900AA78A4 /* CNLivePlayerSDK.framework */; };
91 8178D4191F01FA3600AA78A4 /* CNLivePlayerSDK.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 8178D4161F01FA2900AA78A4 /* CNLivePlayerSDK.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; 82 8178D4191F01FA3600AA78A4 /* CNLivePlayerSDK.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 8178D4161F01FA2900AA78A4 /* CNLivePlayerSDK.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
92 - 81A1B9A91E8277410079FF5F /* LVCInputView.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A1B9A81E8277410079FF5F /* LVCInputView.m */; };  
93 - 81A482F81E88AFA20097A80A /* LVCFirstHeaderReusableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A482F71E88AFA20097A80A /* LVCFirstHeaderReusableView.m */; };  
94 - 81A483021E88B0130097A80A /* LVCChatRoomModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483001E88B0130097A80A /* LVCChatRoomModel.m */; };  
95 - 81A483051E88B32C0097A80A /* LVCHeaderRollCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483041E88B32C0097A80A /* LVCHeaderRollCollectionViewCell.m */; }; 83 + 8178D4241F02043500AA78A4 /* LVCFullScreenPlayerController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D41F1F02043500AA78A4 /* LVCFullScreenPlayerController.m */; };
  84 + 8178D4251F02043500AA78A4 /* LVCLivePlayerController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4211F02043500AA78A4 /* LVCLivePlayerController.m */; };
  85 + 8178D42F1F02044300AA78A4 /* LVCChannelDetailsModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4281F02044300AA78A4 /* LVCChannelDetailsModel.m */; };
  86 + 8178D4301F02044300AA78A4 /* LVCChannelsModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D42A1F02044300AA78A4 /* LVCChannelsModel.m */; };
  87 + 8178D4311F02044300AA78A4 /* LVCChatRoomModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D42C1F02044300AA78A4 /* LVCChatRoomModel.m */; };
  88 + 8178D4321F02044300AA78A4 /* LVCProgramModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D42E1F02044300AA78A4 /* LVCProgramModel.m */; };
  89 + 8178D44A1F02045500AA78A4 /* CNBarrageManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4351F02045500AA78A4 /* CNBarrageManager.m */; };
  90 + 8178D44B1F02045500AA78A4 /* CNBarrageView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4371F02045500AA78A4 /* CNBarrageView.m */; };
  91 + 8178D44C1F02045500AA78A4 /* LVCFirstHeaderReusableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4391F02045500AA78A4 /* LVCFirstHeaderReusableView.m */; };
  92 + 8178D44D1F02045500AA78A4 /* LVCHeaderRollCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D43B1F02045500AA78A4 /* LVCHeaderRollCollectionViewCell.m */; };
  93 + 8178D44E1F02045500AA78A4 /* LVCLiveListCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D43D1F02045500AA78A4 /* LVCLiveListCollectionViewCell.m */; };
  94 + 8178D44F1F02045500AA78A4 /* LVCMoreSortTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D43F1F02045500AA78A4 /* LVCMoreSortTableViewCell.m */; };
  95 + 8178D4501F02045500AA78A4 /* LVCOtherHeaderReusableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4411F02045500AA78A4 /* LVCOtherHeaderReusableView.m */; };
  96 + 8178D4511F02045500AA78A4 /* LVCPlayer.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4431F02045500AA78A4 /* LVCPlayer.m */; };
  97 + 8178D4521F02045500AA78A4 /* LVCPlayerLoadingView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4451F02045500AA78A4 /* LVCPlayerLoadingView.m */; };
  98 + 8178D4531F02045500AA78A4 /* LVCRequestFailedView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4471F02045500AA78A4 /* LVCRequestFailedView.m */; };
  99 + 8178D4541F02045500AA78A4 /* LVCTelevisionView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4491F02045500AA78A4 /* LVCTelevisionView.m */; };
  100 + 8178D4571F0204D600AA78A4 /* LVCTelevisioController.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4561F0204D600AA78A4 /* LVCTelevisioController.m */; };
  101 + 8178D4611F02060B00AA78A4 /* LVCChatView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D45A1F02060B00AA78A4 /* LVCChatView.m */; };
  102 + 8178D4621F02060B00AA78A4 /* LVCChatViewTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D45C1F02060B00AA78A4 /* LVCChatViewTableViewCell.m */; };
  103 + 8178D4631F02060B00AA78A4 /* LVCInputView.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D45E1F02060B00AA78A4 /* LVCInputView.m */; };
  104 + 8178D4641F02060B00AA78A4 /* LVCMessage.m in Sources */ = {isa = PBXBuildFile; fileRef = 8178D4601F02060B00AA78A4 /* LVCMessage.m */; };
96 81A483081E88B6140097A80A /* UIView+ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483071E88B6140097A80A /* UIView+ViewController.m */; }; 105 81A483081E88B6140097A80A /* UIView+ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483071E88B6140097A80A /* UIView+ViewController.m */; };
97 - 81A4830B1E88B7EE0097A80A /* LVCOtherHeaderReusableView.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A4830A1E88B7EE0097A80A /* LVCOtherHeaderReusableView.m */; };  
98 - 81A4830E1E88B8300097A80A /* LVCChannelsModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A4830D1E88B8300097A80A /* LVCChannelsModel.m */; };  
99 - 81A483111E88B8630097A80A /* LVCChannelDetailsModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483101E88B8630097A80A /* LVCChannelDetailsModel.m */; };  
100 - 81A483141E88BA420097A80A /* LVCLiveListCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483131E88BA420097A80A /* LVCLiveListCollectionViewCell.m */; };  
101 81A483171E88BED00097A80A /* LVCTVLiveViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483161E88BED00097A80A /* LVCTVLiveViewController.m */; }; 106 81A483171E88BED00097A80A /* LVCTVLiveViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483161E88BED00097A80A /* LVCTVLiveViewController.m */; };
102 - 81A4831A1E88E19C0097A80A /* LVCMoreProgramViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A483191E88E19C0097A80A /* LVCMoreProgramViewController.m */; };  
103 - 81A4831D1E88E1EB0097A80A /* LVCMoreSortTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A4831C1E88E1EB0097A80A /* LVCMoreSortTableViewCell.m */; };  
104 - 81A483201E88F4BF0097A80A /* LVCProgramModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 81A4831F1E88F4BF0097A80A /* LVCProgramModel.m */; };  
105 - 81CE9E1B1E8CF567000F8F6B /* LVCRequestFailedView.m in Sources */ = {isa = PBXBuildFile; fileRef = 81CE9E1A1E8CF567000F8F6B /* LVCRequestFailedView.m */; };  
106 - 81DFC4241F01132D0029BCB3 /* LVCTelevisionView.m in Sources */ = {isa = PBXBuildFile; fileRef = 81DFC4231F01132D0029BCB3 /* LVCTelevisionView.m */; };  
107 81DFC4261F0113B40029BCB3 /* JsonFile.json in Resources */ = {isa = PBXBuildFile; fileRef = 81DFC4251F0113B40029BCB3 /* JsonFile.json */; }; 107 81DFC4261F0113B40029BCB3 /* JsonFile.json in Resources */ = {isa = PBXBuildFile; fileRef = 81DFC4251F0113B40029BCB3 /* JsonFile.json */; };
108 81F1C8381E8BBDDA0085C2B8 /* MHPagingScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = 81F1C8371E8BBDDA0085C2B8 /* MHPagingScrollView.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; }; 108 81F1C8381E8BBDDA0085C2B8 /* MHPagingScrollView.m in Sources */ = {isa = PBXBuildFile; fileRef = 81F1C8371E8BBDDA0085C2B8 /* MHPagingScrollView.m */; settings = {COMPILER_FLAGS = "-fno-objc-arc"; }; };
109 81F1C8401E8BC5CC0085C2B8 /* NSArray+Safety.m in Sources */ = {isa = PBXBuildFile; fileRef = 81F1C83F1E8BC5CC0085C2B8 /* NSArray+Safety.m */; }; 109 81F1C8401E8BC5CC0085C2B8 /* NSArray+Safety.m in Sources */ = {isa = PBXBuildFile; fileRef = 81F1C83F1E8BC5CC0085C2B8 /* NSArray+Safety.m */; };
@@ -430,10 +430,6 @@ @@ -430,10 +430,6 @@
430 4BD856171EBAD35C0082061D /* NSDictionary+Safety.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+Safety.m"; sourceTree = "<group>"; }; 430 4BD856171EBAD35C0082061D /* NSDictionary+Safety.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSDictionary+Safety.m"; sourceTree = "<group>"; };
431 4BD8561B1EBAD6490082061D /* ZXConst.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ZXConst.h; path = Macros/ZXConst.h; sourceTree = "<group>"; }; 431 4BD8561B1EBAD6490082061D /* ZXConst.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = ZXConst.h; path = Macros/ZXConst.h; sourceTree = "<group>"; };
432 4BD8561C1EBAD6490082061D /* ZXConst.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ZXConst.m; path = Macros/ZXConst.m; sourceTree = "<group>"; }; 432 4BD8561C1EBAD6490082061D /* ZXConst.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = ZXConst.m; path = Macros/ZXConst.m; sourceTree = "<group>"; };
433 - 810B64DE1E779AE900133E15 /* LVCPlayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCPlayer.h; sourceTree = "<group>"; };  
434 - 810B64DF1E779AE900133E15 /* LVCPlayer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCPlayer.m; sourceTree = "<group>"; };  
435 - 810B64E11E779AFE00133E15 /* LVCLivePlayerController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCLivePlayerController.h; sourceTree = "<group>"; };  
436 - 810B64E21E779AFE00133E15 /* LVCLivePlayerController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCLivePlayerController.m; sourceTree = "<group>"; };  
437 810B64E51E779B1F00133E15 /* MASCompositeConstraint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASCompositeConstraint.h; sourceTree = "<group>"; }; 433 810B64E51E779B1F00133E15 /* MASCompositeConstraint.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MASCompositeConstraint.h; sourceTree = "<group>"; };
438 810B64E61E779B1F00133E15 /* MASCompositeConstraint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MASCompositeConstraint.m; sourceTree = "<group>"; }; 434 810B64E61E779B1F00133E15 /* MASCompositeConstraint.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MASCompositeConstraint.m; sourceTree = "<group>"; };
439 810B64E71E779B1F00133E15 /* MASConstraint+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MASConstraint+Private.h"; sourceTree = "<group>"; }; 435 810B64E71E779B1F00133E15 /* MASConstraint+Private.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MASConstraint+Private.h"; sourceTree = "<group>"; };
@@ -459,53 +455,57 @@ @@ -459,53 +455,57 @@
459 810B64FB1E779B1F00133E15 /* View+MASShorthandAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "View+MASShorthandAdditions.h"; sourceTree = "<group>"; }; 455 810B64FB1E779B1F00133E15 /* View+MASShorthandAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "View+MASShorthandAdditions.h"; sourceTree = "<group>"; };
460 810B64FC1E779B1F00133E15 /* ViewController+MASAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ViewController+MASAdditions.h"; sourceTree = "<group>"; }; 456 810B64FC1E779B1F00133E15 /* ViewController+MASAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "ViewController+MASAdditions.h"; sourceTree = "<group>"; };
461 810B64FD1E779B1F00133E15 /* ViewController+MASAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "ViewController+MASAdditions.m"; sourceTree = "<group>"; }; 457 810B64FD1E779B1F00133E15 /* ViewController+MASAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "ViewController+MASAdditions.m"; sourceTree = "<group>"; };
462 - 810B65081E77B39D00133E15 /* LVCFullScreenPlayerController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCFullScreenPlayerController.h; sourceTree = "<group>"; };  
463 - 810B65091E77B39D00133E15 /* LVCFullScreenPlayerController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCFullScreenPlayerController.m; sourceTree = "<group>"; };  
464 - 8112D42F1E7927A5002E00F6 /* LVCPlayerLoadingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCPlayerLoadingView.h; sourceTree = "<group>"; };  
465 - 8112D4301E7927A5002E00F6 /* LVCPlayerLoadingView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCPlayerLoadingView.m; sourceTree = "<group>"; };  
466 - 811BB67C1E80F858005C6291 /* LVCChatView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChatView.h; sourceTree = "<group>"; };  
467 - 811BB67D1E80F858005C6291 /* LVCChatView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChatView.m; sourceTree = "<group>"; };  
468 - 811BB6861E8107B4005C6291 /* LVCChatViewTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChatViewTableViewCell.h; sourceTree = "<group>"; };  
469 - 811BB6871E8107B4005C6291 /* LVCChatViewTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChatViewTableViewCell.m; sourceTree = "<group>"; };  
470 811BB68C1E8116C8005C6291 /* NSString+StringSize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+StringSize.h"; sourceTree = "<group>"; }; 458 811BB68C1E8116C8005C6291 /* NSString+StringSize.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "NSString+StringSize.h"; sourceTree = "<group>"; };
471 811BB68D1E8116C8005C6291 /* NSString+StringSize.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+StringSize.m"; sourceTree = "<group>"; }; 459 811BB68D1E8116C8005C6291 /* NSString+StringSize.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "NSString+StringSize.m"; sourceTree = "<group>"; };
472 - 8128E2841E8A6A3600B40E75 /* CNBarrageManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNBarrageManager.h; sourceTree = "<group>"; };  
473 - 8128E2851E8A6A3600B40E75 /* CNBarrageManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CNBarrageManager.m; sourceTree = "<group>"; };  
474 - 8128E2861E8A6A3600B40E75 /* CNBarrageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNBarrageView.h; sourceTree = "<group>"; };  
475 - 8128E2871E8A6A3600B40E75 /* CNBarrageView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CNBarrageView.m; sourceTree = "<group>"; };  
476 - 8130911C1E84C0F0005F0BFF /* LVCMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCMessage.h; sourceTree = "<group>"; };  
477 - 8130911D1E84C0F0005F0BFF /* LVCMessage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCMessage.m; sourceTree = "<group>"; };  
478 8178D4161F01FA2900AA78A4 /* CNLivePlayerSDK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = CNLivePlayerSDK.framework; sourceTree = "<group>"; }; 460 8178D4161F01FA2900AA78A4 /* CNLivePlayerSDK.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = CNLivePlayerSDK.framework; sourceTree = "<group>"; };
479 - 81A1B9A71E8277410079FF5F /* LVCInputView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCInputView.h; sourceTree = "<group>"; };  
480 - 81A1B9A81E8277410079FF5F /* LVCInputView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCInputView.m; sourceTree = "<group>"; };  
481 - 81A482F61E88AFA20097A80A /* LVCFirstHeaderReusableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCFirstHeaderReusableView.h; sourceTree = "<group>"; };  
482 - 81A482F71E88AFA20097A80A /* LVCFirstHeaderReusableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCFirstHeaderReusableView.m; sourceTree = "<group>"; };  
483 - 81A482FF1E88B0130097A80A /* LVCChatRoomModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChatRoomModel.h; sourceTree = "<group>"; };  
484 - 81A483001E88B0130097A80A /* LVCChatRoomModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChatRoomModel.m; sourceTree = "<group>"; };  
485 - 81A483031E88B32C0097A80A /* LVCHeaderRollCollectionViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCHeaderRollCollectionViewCell.h; sourceTree = "<group>"; };  
486 - 81A483041E88B32C0097A80A /* LVCHeaderRollCollectionViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCHeaderRollCollectionViewCell.m; sourceTree = "<group>"; }; 461 + 8178D41E1F02043500AA78A4 /* LVCFullScreenPlayerController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCFullScreenPlayerController.h; sourceTree = "<group>"; };
  462 + 8178D41F1F02043500AA78A4 /* LVCFullScreenPlayerController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCFullScreenPlayerController.m; sourceTree = "<group>"; };
  463 + 8178D4201F02043500AA78A4 /* LVCLivePlayerController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCLivePlayerController.h; sourceTree = "<group>"; };
  464 + 8178D4211F02043500AA78A4 /* LVCLivePlayerController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCLivePlayerController.m; sourceTree = "<group>"; };
  465 + 8178D4271F02044300AA78A4 /* LVCChannelDetailsModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChannelDetailsModel.h; sourceTree = "<group>"; };
  466 + 8178D4281F02044300AA78A4 /* LVCChannelDetailsModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChannelDetailsModel.m; sourceTree = "<group>"; };
  467 + 8178D4291F02044300AA78A4 /* LVCChannelsModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChannelsModel.h; sourceTree = "<group>"; };
  468 + 8178D42A1F02044300AA78A4 /* LVCChannelsModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChannelsModel.m; sourceTree = "<group>"; };
  469 + 8178D42B1F02044300AA78A4 /* LVCChatRoomModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChatRoomModel.h; sourceTree = "<group>"; };
  470 + 8178D42C1F02044300AA78A4 /* LVCChatRoomModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChatRoomModel.m; sourceTree = "<group>"; };
  471 + 8178D42D1F02044300AA78A4 /* LVCProgramModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCProgramModel.h; sourceTree = "<group>"; };
  472 + 8178D42E1F02044300AA78A4 /* LVCProgramModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCProgramModel.m; sourceTree = "<group>"; };
  473 + 8178D4341F02045500AA78A4 /* CNBarrageManager.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNBarrageManager.h; sourceTree = "<group>"; };
  474 + 8178D4351F02045500AA78A4 /* CNBarrageManager.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CNBarrageManager.m; sourceTree = "<group>"; };
  475 + 8178D4361F02045500AA78A4 /* CNBarrageView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CNBarrageView.h; sourceTree = "<group>"; };
  476 + 8178D4371F02045500AA78A4 /* CNBarrageView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CNBarrageView.m; sourceTree = "<group>"; };
  477 + 8178D4381F02045500AA78A4 /* LVCFirstHeaderReusableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCFirstHeaderReusableView.h; sourceTree = "<group>"; };
  478 + 8178D4391F02045500AA78A4 /* LVCFirstHeaderReusableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCFirstHeaderReusableView.m; sourceTree = "<group>"; };
  479 + 8178D43A1F02045500AA78A4 /* LVCHeaderRollCollectionViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCHeaderRollCollectionViewCell.h; sourceTree = "<group>"; };
  480 + 8178D43B1F02045500AA78A4 /* LVCHeaderRollCollectionViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCHeaderRollCollectionViewCell.m; sourceTree = "<group>"; };
  481 + 8178D43C1F02045500AA78A4 /* LVCLiveListCollectionViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCLiveListCollectionViewCell.h; sourceTree = "<group>"; };
  482 + 8178D43D1F02045500AA78A4 /* LVCLiveListCollectionViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCLiveListCollectionViewCell.m; sourceTree = "<group>"; };
  483 + 8178D43E1F02045500AA78A4 /* LVCMoreSortTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCMoreSortTableViewCell.h; sourceTree = "<group>"; };
  484 + 8178D43F1F02045500AA78A4 /* LVCMoreSortTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCMoreSortTableViewCell.m; sourceTree = "<group>"; };
  485 + 8178D4401F02045500AA78A4 /* LVCOtherHeaderReusableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCOtherHeaderReusableView.h; sourceTree = "<group>"; };
  486 + 8178D4411F02045500AA78A4 /* LVCOtherHeaderReusableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCOtherHeaderReusableView.m; sourceTree = "<group>"; };
  487 + 8178D4421F02045500AA78A4 /* LVCPlayer.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCPlayer.h; sourceTree = "<group>"; };
  488 + 8178D4431F02045500AA78A4 /* LVCPlayer.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCPlayer.m; sourceTree = "<group>"; };
  489 + 8178D4441F02045500AA78A4 /* LVCPlayerLoadingView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCPlayerLoadingView.h; sourceTree = "<group>"; };
  490 + 8178D4451F02045500AA78A4 /* LVCPlayerLoadingView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCPlayerLoadingView.m; sourceTree = "<group>"; };
  491 + 8178D4461F02045500AA78A4 /* LVCRequestFailedView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCRequestFailedView.h; sourceTree = "<group>"; };
  492 + 8178D4471F02045500AA78A4 /* LVCRequestFailedView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCRequestFailedView.m; sourceTree = "<group>"; };
  493 + 8178D4481F02045500AA78A4 /* LVCTelevisionView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCTelevisionView.h; sourceTree = "<group>"; };
  494 + 8178D4491F02045500AA78A4 /* LVCTelevisionView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCTelevisionView.m; sourceTree = "<group>"; };
  495 + 8178D4551F0204D600AA78A4 /* LVCTelevisioController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCTelevisioController.h; sourceTree = "<group>"; };
  496 + 8178D4561F0204D600AA78A4 /* LVCTelevisioController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCTelevisioController.m; sourceTree = "<group>"; };
  497 + 8178D4591F02060B00AA78A4 /* LVCChatView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChatView.h; sourceTree = "<group>"; };
  498 + 8178D45A1F02060B00AA78A4 /* LVCChatView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChatView.m; sourceTree = "<group>"; };
  499 + 8178D45B1F02060B00AA78A4 /* LVCChatViewTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChatViewTableViewCell.h; sourceTree = "<group>"; };
  500 + 8178D45C1F02060B00AA78A4 /* LVCChatViewTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChatViewTableViewCell.m; sourceTree = "<group>"; };
  501 + 8178D45D1F02060B00AA78A4 /* LVCInputView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCInputView.h; sourceTree = "<group>"; };
  502 + 8178D45E1F02060B00AA78A4 /* LVCInputView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCInputView.m; sourceTree = "<group>"; };
  503 + 8178D45F1F02060B00AA78A4 /* LVCMessage.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCMessage.h; sourceTree = "<group>"; };
  504 + 8178D4601F02060B00AA78A4 /* LVCMessage.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCMessage.m; sourceTree = "<group>"; };
487 81A483061E88B6140097A80A /* UIView+ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIView+ViewController.h"; sourceTree = "<group>"; }; 505 81A483061E88B6140097A80A /* UIView+ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "UIView+ViewController.h"; sourceTree = "<group>"; };
488 81A483071E88B6140097A80A /* UIView+ViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIView+ViewController.m"; sourceTree = "<group>"; }; 506 81A483071E88B6140097A80A /* UIView+ViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "UIView+ViewController.m"; sourceTree = "<group>"; };
489 - 81A483091E88B7EE0097A80A /* LVCOtherHeaderReusableView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCOtherHeaderReusableView.h; sourceTree = "<group>"; };  
490 - 81A4830A1E88B7EE0097A80A /* LVCOtherHeaderReusableView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCOtherHeaderReusableView.m; sourceTree = "<group>"; };  
491 - 81A4830C1E88B8300097A80A /* LVCChannelsModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChannelsModel.h; sourceTree = "<group>"; };  
492 - 81A4830D1E88B8300097A80A /* LVCChannelsModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChannelsModel.m; sourceTree = "<group>"; };  
493 - 81A4830F1E88B8630097A80A /* LVCChannelDetailsModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCChannelDetailsModel.h; sourceTree = "<group>"; };  
494 - 81A483101E88B8630097A80A /* LVCChannelDetailsModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCChannelDetailsModel.m; sourceTree = "<group>"; };  
495 - 81A483121E88BA420097A80A /* LVCLiveListCollectionViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCLiveListCollectionViewCell.h; sourceTree = "<group>"; };  
496 - 81A483131E88BA420097A80A /* LVCLiveListCollectionViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCLiveListCollectionViewCell.m; sourceTree = "<group>"; };  
497 81A483151E88BED00097A80A /* LVCTVLiveViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCTVLiveViewController.h; sourceTree = "<group>"; }; 507 81A483151E88BED00097A80A /* LVCTVLiveViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCTVLiveViewController.h; sourceTree = "<group>"; };
498 81A483161E88BED00097A80A /* LVCTVLiveViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCTVLiveViewController.m; sourceTree = "<group>"; }; 508 81A483161E88BED00097A80A /* LVCTVLiveViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCTVLiveViewController.m; sourceTree = "<group>"; };
499 - 81A483181E88E19C0097A80A /* LVCMoreProgramViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCMoreProgramViewController.h; sourceTree = "<group>"; };  
500 - 81A483191E88E19C0097A80A /* LVCMoreProgramViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCMoreProgramViewController.m; sourceTree = "<group>"; };  
501 - 81A4831B1E88E1EB0097A80A /* LVCMoreSortTableViewCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCMoreSortTableViewCell.h; sourceTree = "<group>"; };  
502 - 81A4831C1E88E1EB0097A80A /* LVCMoreSortTableViewCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCMoreSortTableViewCell.m; sourceTree = "<group>"; };  
503 - 81A4831E1E88F4BF0097A80A /* LVCProgramModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCProgramModel.h; sourceTree = "<group>"; };  
504 - 81A4831F1E88F4BF0097A80A /* LVCProgramModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCProgramModel.m; sourceTree = "<group>"; };  
505 - 81CE9E191E8CF567000F8F6B /* LVCRequestFailedView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCRequestFailedView.h; sourceTree = "<group>"; };  
506 - 81CE9E1A1E8CF567000F8F6B /* LVCRequestFailedView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCRequestFailedView.m; sourceTree = "<group>"; };  
507 - 81DFC4221F01132D0029BCB3 /* LVCTelevisionView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LVCTelevisionView.h; sourceTree = "<group>"; };  
508 - 81DFC4231F01132D0029BCB3 /* LVCTelevisionView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LVCTelevisionView.m; sourceTree = "<group>"; };  
509 81DFC4251F0113B40029BCB3 /* JsonFile.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = JsonFile.json; sourceTree = "<group>"; }; 509 81DFC4251F0113B40029BCB3 /* JsonFile.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = JsonFile.json; sourceTree = "<group>"; };
510 81F1C8361E8BBDDA0085C2B8 /* MHPagingScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MHPagingScrollView.h; sourceTree = "<group>"; }; 510 81F1C8361E8BBDDA0085C2B8 /* MHPagingScrollView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MHPagingScrollView.h; sourceTree = "<group>"; };
511 81F1C8371E8BBDDA0085C2B8 /* MHPagingScrollView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MHPagingScrollView.m; sourceTree = "<group>"; }; 511 81F1C8371E8BBDDA0085C2B8 /* MHPagingScrollView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MHPagingScrollView.m; sourceTree = "<group>"; };
@@ -1110,55 +1110,111 @@ @@ -1110,55 +1110,111 @@
1110 path = Masonry; 1110 path = Masonry;
1111 sourceTree = "<group>"; 1111 sourceTree = "<group>";
1112 }; 1112 };
1113 - 811BB67B1E80F858005C6291 /* ChatView */ = { 1113 + 812E504E1E7699B9004F5FCD /* CNLiveSDK */ = {
1114 isa = PBXGroup; 1114 isa = PBXGroup;
1115 children = ( 1115 children = (
1116 - 811BB67C1E80F858005C6291 /* LVCChatView.h */,  
1117 - 811BB67D1E80F858005C6291 /* LVCChatView.m */,  
1118 - 81A1B9A71E8277410079FF5F /* LVCInputView.h */,  
1119 - 81A1B9A81E8277410079FF5F /* LVCInputView.m */,  
1120 - 811BB6861E8107B4005C6291 /* LVCChatViewTableViewCell.h */,  
1121 - 811BB6871E8107B4005C6291 /* LVCChatViewTableViewCell.m */,  
1122 - 8130911C1E84C0F0005F0BFF /* LVCMessage.h */,  
1123 - 8130911D1E84C0F0005F0BFF /* LVCMessage.m */, 1116 + 8178D4161F01FA2900AA78A4 /* CNLivePlayerSDK.framework */,
  1117 + D2994BA41E8F48DE00E8D2CC /* CNLiveChatManager.framework */,
  1118 + D2994BA51E8F48DE00E8D2CC /* CNLiveMsgTools.framework */,
  1119 + D25BF87C1E7B8C78007FB138 /* KSYGPUResource.bundle */,
1124 ); 1120 );
1125 - name = ChatView;  
1126 - path = ../ChatView; 1121 + path = CNLiveSDK;
  1122 + sourceTree = "<group>";
  1123 + };
  1124 + 8178D41A1F02030500AA78A4 /* PGCSections */ = {
  1125 + isa = PBXGroup;
  1126 + children = (
  1127 + 8178D41B1F02036200AA78A4 /* Controller */,
  1128 + 8178D41C1F02036200AA78A4 /* Model */,
  1129 + 8178D41D1F02036200AA78A4 /* View */,
  1130 + );
  1131 + path = PGCSections;
  1132 + sourceTree = "<group>";
  1133 + };
  1134 + 8178D41B1F02036200AA78A4 /* Controller */ = {
  1135 + isa = PBXGroup;
  1136 + children = (
  1137 + 8178D41E1F02043500AA78A4 /* LVCFullScreenPlayerController.h */,
  1138 + 8178D41F1F02043500AA78A4 /* LVCFullScreenPlayerController.m */,
  1139 + 8178D4201F02043500AA78A4 /* LVCLivePlayerController.h */,
  1140 + 8178D4211F02043500AA78A4 /* LVCLivePlayerController.m */,
  1141 + 8178D4551F0204D600AA78A4 /* LVCTelevisioController.h */,
  1142 + 8178D4561F0204D600AA78A4 /* LVCTelevisioController.m */,
  1143 + );
  1144 + path = Controller;
1127 sourceTree = "<group>"; 1145 sourceTree = "<group>";
1128 }; 1146 };
1129 - 8128E2831E8A6A3600B40E75 /* Barrage */ = { 1147 + 8178D41C1F02036200AA78A4 /* Model */ = {
1130 isa = PBXGroup; 1148 isa = PBXGroup;
1131 children = ( 1149 children = (
1132 - 8128E2841E8A6A3600B40E75 /* CNBarrageManager.h */,  
1133 - 8128E2851E8A6A3600B40E75 /* CNBarrageManager.m */,  
1134 - 8128E2861E8A6A3600B40E75 /* CNBarrageView.h */,  
1135 - 8128E2871E8A6A3600B40E75 /* CNBarrageView.m */, 1150 + 8178D4271F02044300AA78A4 /* LVCChannelDetailsModel.h */,
  1151 + 8178D4281F02044300AA78A4 /* LVCChannelDetailsModel.m */,
  1152 + 8178D4291F02044300AA78A4 /* LVCChannelsModel.h */,
  1153 + 8178D42A1F02044300AA78A4 /* LVCChannelsModel.m */,
  1154 + 8178D42B1F02044300AA78A4 /* LVCChatRoomModel.h */,
  1155 + 8178D42C1F02044300AA78A4 /* LVCChatRoomModel.m */,
  1156 + 8178D42D1F02044300AA78A4 /* LVCProgramModel.h */,
  1157 + 8178D42E1F02044300AA78A4 /* LVCProgramModel.m */,
  1158 + );
  1159 + path = Model;
  1160 + sourceTree = "<group>";
  1161 + };
  1162 + 8178D41D1F02036200AA78A4 /* View */ = {
  1163 + isa = PBXGroup;
  1164 + children = (
  1165 + 8178D4581F02060B00AA78A4 /* ChatView */,
  1166 + 8178D4331F02045500AA78A4 /* Barrage */,
  1167 + 8178D4421F02045500AA78A4 /* LVCPlayer.h */,
  1168 + 8178D4431F02045500AA78A4 /* LVCPlayer.m */,
  1169 + 8178D4381F02045500AA78A4 /* LVCFirstHeaderReusableView.h */,
  1170 + 8178D4391F02045500AA78A4 /* LVCFirstHeaderReusableView.m */,
  1171 + 8178D43A1F02045500AA78A4 /* LVCHeaderRollCollectionViewCell.h */,
  1172 + 8178D43B1F02045500AA78A4 /* LVCHeaderRollCollectionViewCell.m */,
  1173 + 8178D43C1F02045500AA78A4 /* LVCLiveListCollectionViewCell.h */,
  1174 + 8178D43D1F02045500AA78A4 /* LVCLiveListCollectionViewCell.m */,
  1175 + 8178D43E1F02045500AA78A4 /* LVCMoreSortTableViewCell.h */,
  1176 + 8178D43F1F02045500AA78A4 /* LVCMoreSortTableViewCell.m */,
  1177 + 8178D4401F02045500AA78A4 /* LVCOtherHeaderReusableView.h */,
  1178 + 8178D4411F02045500AA78A4 /* LVCOtherHeaderReusableView.m */,
  1179 + 8178D4441F02045500AA78A4 /* LVCPlayerLoadingView.h */,
  1180 + 8178D4451F02045500AA78A4 /* LVCPlayerLoadingView.m */,
  1181 + 8178D4461F02045500AA78A4 /* LVCRequestFailedView.h */,
  1182 + 8178D4471F02045500AA78A4 /* LVCRequestFailedView.m */,
  1183 + 8178D4481F02045500AA78A4 /* LVCTelevisionView.h */,
  1184 + 8178D4491F02045500AA78A4 /* LVCTelevisionView.m */,
  1185 + );
  1186 + path = View;
  1187 + sourceTree = "<group>";
  1188 + };
  1189 + 8178D4331F02045500AA78A4 /* Barrage */ = {
  1190 + isa = PBXGroup;
  1191 + children = (
  1192 + 8178D4341F02045500AA78A4 /* CNBarrageManager.h */,
  1193 + 8178D4351F02045500AA78A4 /* CNBarrageManager.m */,
  1194 + 8178D4361F02045500AA78A4 /* CNBarrageView.h */,
  1195 + 8178D4371F02045500AA78A4 /* CNBarrageView.m */,
1136 ); 1196 );
1137 path = Barrage; 1197 path = Barrage;
1138 sourceTree = "<group>"; 1198 sourceTree = "<group>";
1139 }; 1199 };
1140 - 812E504E1E7699B9004F5FCD /* CNLiveSDK */ = { 1200 + 8178D4581F02060B00AA78A4 /* ChatView */ = {
1141 isa = PBXGroup; 1201 isa = PBXGroup;
1142 children = ( 1202 children = (
1143 - 8178D4161F01FA2900AA78A4 /* CNLivePlayerSDK.framework */,  
1144 - D2994BA41E8F48DE00E8D2CC /* CNLiveChatManager.framework */,  
1145 - D2994BA51E8F48DE00E8D2CC /* CNLiveMsgTools.framework */,  
1146 - D25BF87C1E7B8C78007FB138 /* KSYGPUResource.bundle */, 1203 + 8178D4591F02060B00AA78A4 /* LVCChatView.h */,
  1204 + 8178D45A1F02060B00AA78A4 /* LVCChatView.m */,
  1205 + 8178D45B1F02060B00AA78A4 /* LVCChatViewTableViewCell.h */,
  1206 + 8178D45C1F02060B00AA78A4 /* LVCChatViewTableViewCell.m */,
  1207 + 8178D45D1F02060B00AA78A4 /* LVCInputView.h */,
  1208 + 8178D45E1F02060B00AA78A4 /* LVCInputView.m */,
  1209 + 8178D45F1F02060B00AA78A4 /* LVCMessage.h */,
  1210 + 8178D4601F02060B00AA78A4 /* LVCMessage.m */,
1147 ); 1211 );
1148 - path = CNLiveSDK; 1212 + path = ChatView;
1149 sourceTree = "<group>"; 1213 sourceTree = "<group>";
1150 }; 1214 };
1151 81A482FC1E88B0130097A80A /* Model */ = { 1215 81A482FC1E88B0130097A80A /* Model */ = {
1152 isa = PBXGroup; 1216 isa = PBXGroup;
1153 children = ( 1217 children = (
1154 - 81A4830C1E88B8300097A80A /* LVCChannelsModel.h */,  
1155 - 81A4830D1E88B8300097A80A /* LVCChannelsModel.m */,  
1156 - 81A4830F1E88B8630097A80A /* LVCChannelDetailsModel.h */,  
1157 - 81A483101E88B8630097A80A /* LVCChannelDetailsModel.m */,  
1158 - 81A4831E1E88F4BF0097A80A /* LVCProgramModel.h */,  
1159 - 81A4831F1E88F4BF0097A80A /* LVCProgramModel.m */,  
1160 - 81A482FF1E88B0130097A80A /* LVCChatRoomModel.h */,  
1161 - 81A483001E88B0130097A80A /* LVCChatRoomModel.m */,  
1162 D2A089EF1E8A41120071412C /* LVCUGCLiveListModel.h */, 1218 D2A089EF1E8A41120071412C /* LVCUGCLiveListModel.h */,
1163 D2A089F01E8A41120071412C /* LVCUGCLiveListModel.m */, 1219 D2A089F01E8A41120071412C /* LVCUGCLiveListModel.m */,
1164 D2A089E91E8A09CB0071412C /* LVCUGCLivePlayerModel.h */, 1220 D2A089E91E8A09CB0071412C /* LVCUGCLivePlayerModel.h */,
@@ -1545,6 +1601,7 @@ @@ -1545,6 +1601,7 @@
1545 children = ( 1601 children = (
1546 4B45CE421EB86A590079AFB7 /* mySections */, 1602 4B45CE421EB86A590079AFB7 /* mySections */,
1547 D2888DA71E6EC014003A77C8 /* homeSections */, 1603 D2888DA71E6EC014003A77C8 /* homeSections */,
  1604 + 8178D41A1F02030500AA78A4 /* PGCSections */,
1548 D2888D951E6EBAA7003A77C8 /* LiveSections */, 1605 D2888D951E6EBAA7003A77C8 /* LiveSections */,
1549 D2575C431E76846900E3A8FC /* InteractionSections */, 1606 D2575C431E76846900E3A8FC /* InteractionSections */,
1550 D2029C751E6EADE10027CD92 /* ZXSections(例子) */, 1607 D2029C751E6EADE10027CD92 /* ZXSections(例子) */,
@@ -2102,16 +2159,10 @@ @@ -2102,16 +2159,10 @@
2102 children = ( 2159 children = (
2103 D2888DB21E6EC154003A77C8 /* HomeViewController.h */, 2160 D2888DB21E6EC154003A77C8 /* HomeViewController.h */,
2104 D2888DB31E6EC154003A77C8 /* HomeViewController.m */, 2161 D2888DB31E6EC154003A77C8 /* HomeViewController.m */,
2105 - 810B64E11E779AFE00133E15 /* LVCLivePlayerController.h */,  
2106 - 810B64E21E779AFE00133E15 /* LVCLivePlayerController.m */,  
2107 - 810B65081E77B39D00133E15 /* LVCFullScreenPlayerController.h */,  
2108 - 810B65091E77B39D00133E15 /* LVCFullScreenPlayerController.m */,  
2109 D25BF87E1E7BD266007FB138 /* LVCUGCLivePlayerController.h */, 2162 D25BF87E1E7BD266007FB138 /* LVCUGCLivePlayerController.h */,
2110 D25BF87F1E7BD266007FB138 /* LVCUGCLivePlayerController.m */, 2163 D25BF87F1E7BD266007FB138 /* LVCUGCLivePlayerController.m */,
2111 81A483151E88BED00097A80A /* LVCTVLiveViewController.h */, 2164 81A483151E88BED00097A80A /* LVCTVLiveViewController.h */,
2112 81A483161E88BED00097A80A /* LVCTVLiveViewController.m */, 2165 81A483161E88BED00097A80A /* LVCTVLiveViewController.m */,
2113 - 81A483181E88E19C0097A80A /* LVCMoreProgramViewController.h */,  
2114 - 81A483191E88E19C0097A80A /* LVCMoreProgramViewController.m */,  
2115 D2A089EC1E8A336A0071412C /* LiveListService.h */, 2166 D2A089EC1E8A336A0071412C /* LiveListService.h */,
2116 D2A089ED1E8A336A0071412C /* LiveListService.m */, 2167 D2A089ED1E8A336A0071412C /* LiveListService.m */,
2117 D2F048681EE54E860011E39C /* LVCLiveActivityInfoService.h */, 2168 D2F048681EE54E860011E39C /* LVCLiveActivityInfoService.h */,
@@ -2123,24 +2174,6 @@ @@ -2123,24 +2174,6 @@
2123 D2888DAA1E6EC014003A77C8 /* View */ = { 2174 D2888DAA1E6EC014003A77C8 /* View */ = {
2124 isa = PBXGroup; 2175 isa = PBXGroup;
2125 children = ( 2176 children = (
2126 - 8128E2831E8A6A3600B40E75 /* Barrage */,  
2127 - 811BB67B1E80F858005C6291 /* ChatView */,  
2128 - 810B64DE1E779AE900133E15 /* LVCPlayer.h */,  
2129 - 810B64DF1E779AE900133E15 /* LVCPlayer.m */,  
2130 - 81DFC4221F01132D0029BCB3 /* LVCTelevisionView.h */,  
2131 - 81DFC4231F01132D0029BCB3 /* LVCTelevisionView.m */,  
2132 - 81A482F61E88AFA20097A80A /* LVCFirstHeaderReusableView.h */,  
2133 - 81A482F71E88AFA20097A80A /* LVCFirstHeaderReusableView.m */,  
2134 - 81A483091E88B7EE0097A80A /* LVCOtherHeaderReusableView.h */,  
2135 - 81A4830A1E88B7EE0097A80A /* LVCOtherHeaderReusableView.m */,  
2136 - 81A483121E88BA420097A80A /* LVCLiveListCollectionViewCell.h */,  
2137 - 81A483131E88BA420097A80A /* LVCLiveListCollectionViewCell.m */,  
2138 - 81A483031E88B32C0097A80A /* LVCHeaderRollCollectionViewCell.h */,  
2139 - 81A483041E88B32C0097A80A /* LVCHeaderRollCollectionViewCell.m */,  
2140 - 8112D42F1E7927A5002E00F6 /* LVCPlayerLoadingView.h */,  
2141 - 8112D4301E7927A5002E00F6 /* LVCPlayerLoadingView.m */,  
2142 - 81CE9E191E8CF567000F8F6B /* LVCRequestFailedView.h */,  
2143 - 81CE9E1A1E8CF567000F8F6B /* LVCRequestFailedView.m */,  
2144 D28F5FFD1E8BC7EF00914142 /* LVCUGCLiveListView.h */, 2177 D28F5FFD1E8BC7EF00914142 /* LVCUGCLiveListView.h */,
2145 D28F5FFE1E8BC7EF00914142 /* LVCUGCLiveListView.m */, 2178 D28F5FFE1E8BC7EF00914142 /* LVCUGCLiveListView.m */,
2146 D2A089E61E89FA720071412C /* LVCUGCLivePlayerCell.h */, 2179 D2A089E61E89FA720071412C /* LVCUGCLivePlayerCell.h */,
@@ -2149,8 +2182,6 @@ @@ -2149,8 +2182,6 @@
2149 D25BF8821E7F775F007FB138 /* LVCUGCPlayerLoadingView.m */, 2182 D25BF8821E7F775F007FB138 /* LVCUGCPlayerLoadingView.m */,
2150 D25BF8911E7FBAEA007FB138 /* LVCUGCBackgroundView.h */, 2183 D25BF8911E7FBAEA007FB138 /* LVCUGCBackgroundView.h */,
2151 D25BF8921E7FBAEA007FB138 /* LVCUGCBackgroundView.m */, 2184 D25BF8921E7FBAEA007FB138 /* LVCUGCBackgroundView.m */,
2152 - 81A4831B1E88E1EB0097A80A /* LVCMoreSortTableViewCell.h */,  
2153 - 81A4831C1E88E1EB0097A80A /* LVCMoreSortTableViewCell.m */,  
2154 ); 2185 );
2155 path = View; 2186 path = View;
2156 sourceTree = "<group>"; 2187 sourceTree = "<group>";
@@ -2323,7 +2354,6 @@ @@ -2323,7 +2354,6 @@
2323 D2029CC01E6EADE10027CD92 /* UIImage+GIF.m in Sources */, 2354 D2029CC01E6EADE10027CD92 /* UIImage+GIF.m in Sources */,
2324 4B45CE851EB86A590079AFB7 /* LVCClearCachesCell.m in Sources */, 2355 4B45CE851EB86A590079AFB7 /* LVCClearCachesCell.m in Sources */,
2325 D25BF8831E7F775F007FB138 /* LVCUGCPlayerLoadingView.m in Sources */, 2356 D25BF8831E7F775F007FB138 /* LVCUGCPlayerLoadingView.m in Sources */,
2326 - 81A4831A1E88E19C0097A80A /* LVCMoreProgramViewController.m in Sources */,  
2327 4B45CE9B1EB86A760079AFB7 /* ZXUIKit.m in Sources */, 2357 4B45CE9B1EB86A760079AFB7 /* ZXUIKit.m in Sources */,
2328 D214CB4F1EF7BD890014EEBA /* V8HorizontalPickerView.m in Sources */, 2358 D214CB4F1EF7BD890014EEBA /* V8HorizontalPickerView.m in Sources */,
2329 D2029BCF1E6EADD70027CD92 /* ZXTabBarController.m in Sources */, 2359 D2029BCF1E6EADD70027CD92 /* ZXTabBarController.m in Sources */,
@@ -2333,8 +2363,10 @@ @@ -2333,8 +2363,10 @@
2333 D28F5FFF1E8BC7EF00914142 /* LVCUGCLiveListView.m in Sources */, 2363 D28F5FFF1E8BC7EF00914142 /* LVCUGCLiveListView.m in Sources */,
2334 D2029CC11E6EADE10027CD92 /* UIImage+MultiFormat.m in Sources */, 2364 D2029CC11E6EADE10027CD92 /* UIImage+MultiFormat.m in Sources */,
2335 D245715F1E83B09900AA85D6 /* userInfoModel.m in Sources */, 2365 D245715F1E83B09900AA85D6 /* userInfoModel.m in Sources */,
  2366 + 8178D4241F02043500AA78A4 /* LVCFullScreenPlayerController.m in Sources */,
2336 D2029C861E6EADE10027CD92 /* Tools.m in Sources */, 2367 D2029C861E6EADE10027CD92 /* Tools.m in Sources */,
2337 4B42A6C41EC00CC800DA09D7 /* UIAlertView+Blocks.m in Sources */, 2368 4B42A6C41EC00CC800DA09D7 /* UIAlertView+Blocks.m in Sources */,
  2369 + 8178D44E1F02045500AA78A4 /* LVCLiveListCollectionViewCell.m in Sources */,
2338 D25BF8931E7FBAEA007FB138 /* LVCUGCBackgroundView.m in Sources */, 2370 D25BF8931E7FBAEA007FB138 /* LVCUGCBackgroundView.m in Sources */,
2339 D214CB521EF7CB310014EEBA /* LVCChannelPagingView.m in Sources */, 2371 D214CB521EF7CB310014EEBA /* LVCChannelPagingView.m in Sources */,
2340 4B45CE861EB86A590079AFB7 /* LVCLoginShowView.m in Sources */, 2372 4B45CE861EB86A590079AFB7 /* LVCLoginShowView.m in Sources */,
@@ -2343,15 +2375,13 @@ @@ -2343,15 +2375,13 @@
2343 D2029CB51E6EADE10027CD92 /* SDiOSVersion.m in Sources */, 2375 D2029CB51E6EADE10027CD92 /* SDiOSVersion.m in Sources */,
2344 4B45CE981EB86A760079AFB7 /* UILabel+createLabel.m in Sources */, 2376 4B45CE981EB86A760079AFB7 /* UILabel+createLabel.m in Sources */,
2345 D2029C9C1E6EADE10027CD92 /* MJPropertyType.m in Sources */, 2377 D2029C9C1E6EADE10027CD92 /* MJPropertyType.m in Sources */,
2346 - 81A4830E1E88B8300097A80A /* LVCChannelsModel.m in Sources */,  
2347 D22831091E77D8D500627701 /* GiftModel.m in Sources */, 2378 D22831091E77D8D500627701 /* GiftModel.m in Sources */,
2348 D23BBDBE1EF8ED4A002FE0B8 /* LVCChannelDetailModel.m in Sources */, 2379 D23BBDBE1EF8ED4A002FE0B8 /* LVCChannelDetailModel.m in Sources */,
2349 D2029CCD1E6EADE10027CD92 /* SearchModel.m in Sources */, 2380 D2029CCD1E6EADE10027CD92 /* SearchModel.m in Sources */,
2350 4BD8560F1EBACEF80082061D /* CNLiveWebView.m in Sources */, 2381 4BD8560F1EBACEF80082061D /* CNLiveWebView.m in Sources */,
2351 810B65051E779B1F00133E15 /* NSLayoutConstraint+MASDebugAdditions.m in Sources */, 2382 810B65051E779B1F00133E15 /* NSLayoutConstraint+MASDebugAdditions.m in Sources */,
2352 D2029CCB1E6EADE10027CD92 /* SVRadialGradientLayer.m in Sources */, 2383 D2029CCB1E6EADE10027CD92 /* SVRadialGradientLayer.m in Sources */,
2353 - 8130911E1E84C0F0005F0BFF /* LVCMessage.m in Sources */,  
2354 - 81DFC4241F01132D0029BCB3 /* LVCTelevisionView.m in Sources */, 2384 + 8178D4541F02045500AA78A4 /* LVCTelevisionView.m in Sources */,
2355 D23696841E7FC6A900E4BF71 /* chatListCell.m in Sources */, 2385 D23696841E7FC6A900E4BF71 /* chatListCell.m in Sources */,
2356 4B45CE7B1EB86A590079AFB7 /* MinePersonalDataController.m in Sources */, 2386 4B45CE7B1EB86A590079AFB7 /* MinePersonalDataController.m in Sources */,
2357 D2029CAF1E6EADE10027CD92 /* MJRefreshStateHeader.m in Sources */, 2387 D2029CAF1E6EADE10027CD92 /* MJRefreshStateHeader.m in Sources */,
@@ -2359,12 +2389,13 @@ @@ -2359,12 +2389,13 @@
2359 81F1C8401E8BC5CC0085C2B8 /* NSArray+Safety.m in Sources */, 2389 81F1C8401E8BC5CC0085C2B8 /* NSArray+Safety.m in Sources */,
2360 D2A089EE1E8A336A0071412C /* LiveListService.m in Sources */, 2390 D2A089EE1E8A336A0071412C /* LiveListService.m in Sources */,
2361 D2A089E81E89FA720071412C /* LVCUGCLivePlayerCell.m in Sources */, 2391 D2A089E81E89FA720071412C /* LVCUGCLivePlayerCell.m in Sources */,
2362 - 81A483111E88B8630097A80A /* LVCChannelDetailsModel.m in Sources */,  
2363 D2029D011E6EAE2E0027CD92 /* UIColor+HexString.m in Sources */, 2392 D2029D011E6EAE2E0027CD92 /* UIColor+HexString.m in Sources */,
2364 4B45CE7D1EB86A590079AFB7 /* ModifyInfomationController.m in Sources */, 2393 4B45CE7D1EB86A590079AFB7 /* ModifyInfomationController.m in Sources */,
2365 D23BBDBB1EF8E8B2002FE0B8 /* LVCBannerAndMarqueeModel.m in Sources */, 2394 D23BBDBB1EF8E8B2002FE0B8 /* LVCBannerAndMarqueeModel.m in Sources */,
2366 D2029CA41E6EADE10027CD92 /* MJRefreshComponent.m in Sources */, 2395 D2029CA41E6EADE10027CD92 /* MJRefreshComponent.m in Sources */,
  2396 + 8178D42F1F02044300AA78A4 /* LVCChannelDetailsModel.m in Sources */,
2367 D2575C7A1E76A4F300E3A8FC /* NHCarViews.m in Sources */, 2397 D2575C7A1E76A4F300E3A8FC /* NHCarViews.m in Sources */,
  2398 + 8178D44A1F02045500AA78A4 /* CNBarrageManager.m in Sources */,
2368 D209AD711EC583D100D82E3B /* MineAccountController.m in Sources */, 2399 D209AD711EC583D100D82E3B /* MineAccountController.m in Sources */,
2369 D2029CBC1E6EADE10027CD92 /* SDWebImageDownloaderOperation.m in Sources */, 2400 D2029CBC1E6EADE10027CD92 /* SDWebImageDownloaderOperation.m in Sources */,
2370 D2029CA51E6EADE10027CD92 /* MJRefreshFooter.m in Sources */, 2401 D2029CA51E6EADE10027CD92 /* MJRefreshFooter.m in Sources */,
@@ -2380,7 +2411,6 @@ @@ -2380,7 +2411,6 @@
2380 D29E81ED1E88DC5B008C9906 /* PriChatCell.m in Sources */, 2411 D29E81ED1E88DC5B008C9906 /* PriChatCell.m in Sources */,
2381 D2029CD01E6EADE10027CD92 /* SearchPresenter.m in Sources */, 2412 D2029CD01E6EADE10027CD92 /* SearchPresenter.m in Sources */,
2382 D2029CBE1E6EADE10027CD92 /* SDWebImagePrefetcher.m in Sources */, 2413 D2029CBE1E6EADE10027CD92 /* SDWebImagePrefetcher.m in Sources */,
2383 - 8128E2891E8A6A3600B40E75 /* CNBarrageView.m in Sources */,  
2384 D2A803081E80BD6F009D6F1C /* TopToolView.m in Sources */, 2414 D2A803081E80BD6F009D6F1C /* TopToolView.m in Sources */,
2385 D2B7B2571E8261EF00ED084E /* ChatBarrOperation.m in Sources */, 2415 D2B7B2571E8261EF00ED084E /* ChatBarrOperation.m in Sources */,
2386 D209AD6B1EC580F100D82E3B /* LVCWebViewController.m in Sources */, 2416 D209AD6B1EC580F100D82E3B /* LVCWebViewController.m in Sources */,
@@ -2392,12 +2422,12 @@ @@ -2392,12 +2422,12 @@
2392 D2029BCB1E6EADD70027CD92 /* BaseTableViewCell.m in Sources */, 2422 D2029BCB1E6EADD70027CD92 /* BaseTableViewCell.m in Sources */,
2393 81F1C8381E8BBDDA0085C2B8 /* MHPagingScrollView.m in Sources */, 2423 81F1C8381E8BBDDA0085C2B8 /* MHPagingScrollView.m in Sources */,
2394 D2029CAA1E6EADE10027CD92 /* MJRefreshBackGifFooter.m in Sources */, 2424 D2029CAA1E6EADE10027CD92 /* MJRefreshBackGifFooter.m in Sources */,
  2425 + 8178D4531F02045500AA78A4 /* LVCRequestFailedView.m in Sources */,
2395 4BD855FB1EBACD530082061D /* AFHTTPRequestOperationManager.m in Sources */, 2426 4BD855FB1EBACD530082061D /* AFHTTPRequestOperationManager.m in Sources */,
2396 D217A24B1E7B76C7003B44CB /* PresentViewCell.m in Sources */, 2427 D217A24B1E7B76C7003B44CB /* PresentViewCell.m in Sources */,
2397 D2029C9B1E6EADE10027CD92 /* MJPropertyKey.m in Sources */, 2428 D2029C9B1E6EADE10027CD92 /* MJPropertyKey.m in Sources */,
2398 4B45CE821EB86A590079AFB7 /* LVCMineCommonModel.m in Sources */, 2429 4B45CE821EB86A590079AFB7 /* LVCMineCommonModel.m in Sources */,
2399 D2029CBF1E6EADE10027CD92 /* UIButton+WebCache.m in Sources */, 2430 D2029CBF1E6EADE10027CD92 /* UIButton+WebCache.m in Sources */,
2400 - 810B64E31E779AFE00133E15 /* LVCLivePlayerController.m in Sources */,  
2401 D2575C7E1E76A4F300E3A8FC /* NHPlaneViews.m in Sources */, 2431 D2575C7E1E76A4F300E3A8FC /* NHPlaneViews.m in Sources */,
2402 4B45CE761EB86A590079AFB7 /* BeingAnchorController.m in Sources */, 2432 4B45CE761EB86A590079AFB7 /* BeingAnchorController.m in Sources */,
2403 D2029CC51E6EADE10027CD92 /* UIView+WebCacheOperation.m in Sources */, 2433 D2029CC51E6EADE10027CD92 /* UIView+WebCacheOperation.m in Sources */,
@@ -2412,16 +2442,18 @@ @@ -2412,16 +2442,18 @@
2412 D2029CA31E6EADE10027CD92 /* MJRefreshBackFooter.m in Sources */, 2442 D2029CA31E6EADE10027CD92 /* MJRefreshBackFooter.m in Sources */,
2413 4B45CE7E1EB86A590079AFB7 /* LoginViewController.m in Sources */, 2443 4B45CE7E1EB86A590079AFB7 /* LoginViewController.m in Sources */,
2414 D255300C1E793F8200DF38A5 /* NHFighterView+animDelegagte.m in Sources */, 2444 D255300C1E793F8200DF38A5 /* NHFighterView+animDelegagte.m in Sources */,
2415 - 81A4831D1E88E1EB0097A80A /* LVCMoreSortTableViewCell.m in Sources */,  
2416 4BD856181EBAD35C0082061D /* NSDictionary+Safety.m in Sources */, 2445 4BD856181EBAD35C0082061D /* NSDictionary+Safety.m in Sources */,
2417 4BD856011EBACD530082061D /* AFURLResponseSerialization.m in Sources */, 2446 4BD856011EBACD530082061D /* AFURLResponseSerialization.m in Sources */,
2418 D2575C4A1E7685DE00E3A8FC /* UIView+Bubbling.m in Sources */, 2447 D2575C4A1E7685DE00E3A8FC /* UIView+Bubbling.m in Sources */,
  2448 + 8178D4301F02044300AA78A4 /* LVCChannelsModel.m in Sources */,
2419 D23BBDB81EF8D15D002FE0B8 /* LVCMainHeaderCollectionReusableView.m in Sources */, 2449 D23BBDB81EF8D15D002FE0B8 /* LVCMainHeaderCollectionReusableView.m in Sources */,
2420 D2029CA61E6EADE10027CD92 /* MJRefreshHeader.m in Sources */, 2450 D2029CA61E6EADE10027CD92 /* MJRefreshHeader.m in Sources */,
2421 D2029CC41E6EADE10027CD92 /* UIImageView+WebCache.m in Sources */, 2451 D2029CC41E6EADE10027CD92 /* UIImageView+WebCache.m in Sources */,
2422 4B45CE801EB86A590079AFB7 /* idAndPwdView.m in Sources */, 2452 4B45CE801EB86A590079AFB7 /* idAndPwdView.m in Sources */,
  2453 + 8178D4521F02045500AA78A4 /* LVCPlayerLoadingView.m in Sources */,
2423 D23BBDC41EF8FB99002FE0B8 /* LVCMainHorizontalCollectionViewCell.m in Sources */, 2454 D23BBDC41EF8FB99002FE0B8 /* LVCMainHorizontalCollectionViewCell.m in Sources */,
2424 D233EE721EEA88EF00674ED5 /* LVCHomePageViewController.m in Sources */, 2455 D233EE721EEA88EF00674ED5 /* LVCHomePageViewController.m in Sources */,
  2456 + 8178D4251F02043500AA78A4 /* LVCLivePlayerController.m in Sources */,
2425 D236967E1E7F9E4100E4BF71 /* GiftPayButton.m in Sources */, 2457 D236967E1E7F9E4100E4BF71 /* GiftPayButton.m in Sources */,
2426 4BD8560A1EBACD530082061D /* UIWebView+AFNetworking.m in Sources */, 2458 4BD8560A1EBACD530082061D /* UIWebView+AFNetworking.m in Sources */,
2427 D219E86B1EFD04A700650F38 /* LVCBigHorizontalCollectionViewCell.m in Sources */, 2459 D219E86B1EFD04A700650F38 /* LVCBigHorizontalCollectionViewCell.m in Sources */,
@@ -2436,50 +2468,53 @@ @@ -2436,50 +2468,53 @@
2436 810B65071E779B1F00133E15 /* ViewController+MASAdditions.m in Sources */, 2468 810B65071E779B1F00133E15 /* ViewController+MASAdditions.m in Sources */,
2437 D2029C9A1E6EADE10027CD92 /* MJProperty.m in Sources */, 2469 D2029C9A1E6EADE10027CD92 /* MJProperty.m in Sources */,
2438 4BD856031EBACD530082061D /* AFNetworkActivityIndicatorManager.m in Sources */, 2470 4BD856031EBACD530082061D /* AFNetworkActivityIndicatorManager.m in Sources */,
  2471 + 8178D44D1F02045500AA78A4 /* LVCHeaderRollCollectionViewCell.m in Sources */,
2439 4BD855CD1EBAC4B70082061D /* CNLiveKeychainWrapper.m in Sources */, 2472 4BD855CD1EBAC4B70082061D /* CNLiveKeychainWrapper.m in Sources */,
2440 D2029CB91E6EADE10027CD92 /* SDWebImageCompat.m in Sources */, 2473 D2029CB91E6EADE10027CD92 /* SDWebImageCompat.m in Sources */,
2441 D2029CB61E6EADE10027CD92 /* MKAnnotationView+WebCache.m in Sources */, 2474 D2029CB61E6EADE10027CD92 /* MKAnnotationView+WebCache.m in Sources */,
2442 4BD856121EBAD2640082061D /* ProgramModel.m in Sources */, 2475 4BD856121EBAD2640082061D /* ProgramModel.m in Sources */,
2443 D2B2ED801E88FC5200F7538A /* LVCUGCLiveEndView.m in Sources */, 2476 D2B2ED801E88FC5200F7538A /* LVCUGCLiveEndView.m in Sources */,
2444 810B64FE1E779B1F00133E15 /* MASCompositeConstraint.m in Sources */, 2477 810B64FE1E779B1F00133E15 /* MASCompositeConstraint.m in Sources */,
2445 - 8128E2881E8A6A3600B40E75 /* CNBarrageManager.m in Sources */,  
2446 D2029C981E6EADE10027CD92 /* MJExtensionConst.m in Sources */, 2478 D2029C981E6EADE10027CD92 /* MJExtensionConst.m in Sources */,
  2479 + 8178D4571F0204D600AA78A4 /* LVCTelevisioController.m in Sources */,
2447 D2575C671E76A25400E3A8FC /* LVCInteractionController.m in Sources */, 2480 D2575C671E76A25400E3A8FC /* LVCInteractionController.m in Sources */,
2448 D2029CAE1E6EADE10027CD92 /* MJRefreshNormalHeader.m in Sources */, 2481 D2029CAE1E6EADE10027CD92 /* MJRefreshNormalHeader.m in Sources */,
2449 D23696921E7FC83800E4BF71 /* chatMsgModel.m in Sources */, 2482 D23696921E7FC83800E4BF71 /* chatMsgModel.m in Sources */,
2450 4BD856071EBACD530082061D /* UIImageView+AFNetworking.m in Sources */, 2483 4BD856071EBACD530082061D /* UIImageView+AFNetworking.m in Sources */,
2451 D2029CC61E6EADE10027CD92 /* SSKeychain.m in Sources */, 2484 D2029CC61E6EADE10027CD92 /* SSKeychain.m in Sources */,
2452 4B45CE871EB86A590079AFB7 /* LVCMineCommonCell.m in Sources */, 2485 4B45CE871EB86A590079AFB7 /* LVCMineCommonCell.m in Sources */,
  2486 + 8178D4621F02060B00AA78A4 /* LVCChatViewTableViewCell.m in Sources */,
2453 811BB68E1E8116C8005C6291 /* NSString+StringSize.m in Sources */, 2487 811BB68E1E8116C8005C6291 /* NSString+StringSize.m in Sources */,
2454 4BD856051EBACD530082061D /* UIAlertView+AFNetworking.m in Sources */, 2488 4BD856051EBACD530082061D /* UIAlertView+AFNetworking.m in Sources */,
2455 D224B1971E826ED800CC61D0 /* ChatBarrageAnimAction.m in Sources */, 2489 D224B1971E826ED800CC61D0 /* ChatBarrageAnimAction.m in Sources */,
2456 D2029C9E1E6EADE10027CD92 /* NSObject+MJCoding.m in Sources */, 2490 D2029C9E1E6EADE10027CD92 /* NSObject+MJCoding.m in Sources */,
2457 - 81A483021E88B0130097A80A /* LVCChatRoomModel.m in Sources */,  
2458 D2029C991E6EADE10027CD92 /* MJFoundation.m in Sources */, 2491 D2029C991E6EADE10027CD92 /* MJFoundation.m in Sources */,
  2492 + 8178D4641F02060B00AA78A4 /* LVCMessage.m in Sources */,
2459 4B45CE8B1EB86A590079AFB7 /* LVCTextField.m in Sources */, 2493 4B45CE8B1EB86A590079AFB7 /* LVCTextField.m in Sources */,
2460 D2575C461E76857100E3A8FC /* LVCAnimationManager.m in Sources */, 2494 D2575C461E76857100E3A8FC /* LVCAnimationManager.m in Sources */,
2461 D2A089F11E8A41120071412C /* LVCUGCLiveListModel.m in Sources */, 2495 D2A089F11E8A41120071412C /* LVCUGCLiveListModel.m in Sources */,
  2496 + 8178D4321F02044300AA78A4 /* LVCProgramModel.m in Sources */,
2462 D2CBC13B1ECC157A00E00279 /* LVCVerifyLiveAuthService.m in Sources */, 2497 D2CBC13B1ECC157A00E00279 /* LVCVerifyLiveAuthService.m in Sources */,
2463 D2029D041E6EAE2E0027CD92 /* UILabel+ContentSize.m in Sources */, 2498 D2029D041E6EAE2E0027CD92 /* UILabel+ContentSize.m in Sources */,
2464 4B45CE7C1EB86A590079AFB7 /* MineSettingViewController.m in Sources */, 2499 4B45CE7C1EB86A590079AFB7 /* MineSettingViewController.m in Sources */,
2465 4BD855D11EBAC7220082061D /* DESUtility.m in Sources */, 2500 4BD855D11EBAC7220082061D /* DESUtility.m in Sources */,
2466 D25530031E79115100DF38A5 /* AnimQueueManager.m in Sources */, 2501 D25530031E79115100DF38A5 /* AnimQueueManager.m in Sources */,
2467 - 81A482F81E88AFA20097A80A /* LVCFirstHeaderReusableView.m in Sources */,  
2468 D2029B861E6EAAA50027CD92 /* main.m in Sources */, 2502 D2029B861E6EAAA50027CD92 /* main.m in Sources */,
2469 4B45CEA71EB86B9F0079AFB7 /* NSObject+UserModel.m in Sources */, 2503 4B45CEA71EB86B9F0079AFB7 /* NSObject+UserModel.m in Sources */,
2470 4BD856061EBACD530082061D /* UIButton+AFNetworking.m in Sources */, 2504 4BD856061EBACD530082061D /* UIButton+AFNetworking.m in Sources */,
2471 D2029C9F1E6EADE10027CD92 /* NSObject+MJKeyValue.m in Sources */, 2505 D2029C9F1E6EADE10027CD92 /* NSObject+MJKeyValue.m in Sources */,
2472 D209AD6E1EC583B700D82E3B /* MineMessageController.m in Sources */, 2506 D209AD6E1EC583B700D82E3B /* MineMessageController.m in Sources */,
2473 D25BF8A01E80C4BD007FB138 /* UIImage+LVCVagueImage.m in Sources */, 2507 D25BF8A01E80C4BD007FB138 /* UIImage+LVCVagueImage.m in Sources */,
  2508 + 8178D44C1F02045500AA78A4 /* LVCFirstHeaderReusableView.m in Sources */,
2474 D2888DB11E6EC05F003A77C8 /* TempViewController.m in Sources */, 2509 D2888DB11E6EC05F003A77C8 /* TempViewController.m in Sources */,
2475 810B65021E779B1F00133E15 /* MASViewAttribute.m in Sources */, 2510 810B65021E779B1F00133E15 /* MASViewAttribute.m in Sources */,
2476 D2B7B2511E8247D400ED084E /* ChatBarrageManager.m in Sources */, 2511 D2B7B2511E8247D400ED084E /* ChatBarrageManager.m in Sources */,
2477 D2029CAC1E6EADE10027CD92 /* MJRefreshBackStateFooter.m in Sources */, 2512 D2029CAC1E6EADE10027CD92 /* MJRefreshBackStateFooter.m in Sources */,
2478 D2029CB11E6EADE10027CD92 /* MJRefreshConst.m in Sources */, 2513 D2029CB11E6EADE10027CD92 /* MJRefreshConst.m in Sources */,
2479 D2029CAD1E6EADE10027CD92 /* MJRefreshGifHeader.m in Sources */, 2514 D2029CAD1E6EADE10027CD92 /* MJRefreshGifHeader.m in Sources */,
2480 - 81A483141E88BA420097A80A /* LVCLiveListCollectionViewCell.m in Sources */,  
2481 D2029CB31E6EADE10027CD92 /* UIScrollView+MJRefresh.m in Sources */, 2515 D2029CB31E6EADE10027CD92 /* UIScrollView+MJRefresh.m in Sources */,
2482 4BD856151EBAD31A0082061D /* NSString+UrlEncode.m in Sources */, 2516 4BD856151EBAD31A0082061D /* NSString+UrlEncode.m in Sources */,
  2517 + 8178D4631F02060B00AA78A4 /* LVCInputView.m in Sources */,
2483 4B45CE7F1EB86A590079AFB7 /* RegisterCommonController.m in Sources */, 2518 4B45CE7F1EB86A590079AFB7 /* RegisterCommonController.m in Sources */,
2484 4BD855FA1EBACD530082061D /* AFHTTPRequestOperation.m in Sources */, 2519 4BD855FA1EBACD530082061D /* AFHTTPRequestOperation.m in Sources */,
2485 D2029D051E6EAE2E0027CD92 /* UILabel+labelFitSize.m in Sources */, 2520 D2029D051E6EAE2E0027CD92 /* UILabel+labelFitSize.m in Sources */,
@@ -2487,12 +2522,11 @@ @@ -2487,12 +2522,11 @@
2487 D29D88481E88C53300543A03 /* LVCUGCLivePrepareView.m in Sources */, 2522 D29D88481E88C53300543A03 /* LVCUGCLivePrepareView.m in Sources */,
2488 D2029D091E6EAE2E0027CD92 /* Foundation+Log.m in Sources */, 2523 D2029D091E6EAE2E0027CD92 /* Foundation+Log.m in Sources */,
2489 4B45CEAB1EB86BFA0079AFB7 /* NSString+ZXExtension.m in Sources */, 2524 4B45CEAB1EB86BFA0079AFB7 /* NSString+ZXExtension.m in Sources */,
2490 - 81A483201E88F4BF0097A80A /* LVCProgramModel.m in Sources */,  
2491 D2029BCA1E6EADD70027CD92 /* BaseModel.m in Sources */, 2525 D2029BCA1E6EADD70027CD92 /* BaseModel.m in Sources */,
2492 D25BF87B1E7B8A82007FB138 /* SliderView.m in Sources */, 2526 D25BF87B1E7B8A82007FB138 /* SliderView.m in Sources */,
2493 810B65041E779B1F00133E15 /* NSArray+MASAdditions.m in Sources */, 2527 810B65041E779B1F00133E15 /* NSArray+MASAdditions.m in Sources */,
2494 - 81A4830B1E88B7EE0097A80A /* LVCOtherHeaderReusableView.m in Sources */,  
2495 D25BF8801E7BD266007FB138 /* LVCUGCLivePlayerController.m in Sources */, 2528 D25BF8801E7BD266007FB138 /* LVCUGCLivePlayerController.m in Sources */,
  2529 + 8178D4501F02045500AA78A4 /* LVCOtherHeaderReusableView.m in Sources */,
2496 D2029D031E6EAE2E0027CD92 /* UIImage+ZXExtension.m in Sources */, 2530 D2029D031E6EAE2E0027CD92 /* UIImage+ZXExtension.m in Sources */,
2497 4BD855FC1EBACD530082061D /* AFHTTPSessionManager.m in Sources */, 2531 4BD855FC1EBACD530082061D /* AFHTTPSessionManager.m in Sources */,
2498 4B45CE841EB86A590079AFB7 /* ModifyCommonView.m in Sources */, 2532 4B45CE841EB86A590079AFB7 /* ModifyCommonView.m in Sources */,
@@ -2500,43 +2534,41 @@ @@ -2500,43 +2534,41 @@
2500 D24571581E8393EB00AA85D6 /* UIImageView+ZXExtension.m in Sources */, 2534 D24571581E8393EB00AA85D6 /* UIImageView+ZXExtension.m in Sources */,
2501 D2029D0A1E6EAE2E0027CD92 /* ZXServerUrl.m in Sources */, 2535 D2029D0A1E6EAE2E0027CD92 /* ZXServerUrl.m in Sources */,
2502 D2029CCA1E6EADE10027CD92 /* SVProgressHUD.m in Sources */, 2536 D2029CCA1E6EADE10027CD92 /* SVProgressHUD.m in Sources */,
2503 - 81A483051E88B32C0097A80A /* LVCHeaderRollCollectionViewCell.m in Sources */,  
2504 D2029CA81E6EADE10027CD92 /* MJRefreshAutoNormalFooter.m in Sources */, 2537 D2029CA81E6EADE10027CD92 /* MJRefreshAutoNormalFooter.m in Sources */,
2505 4B45CE991EB86A760079AFB7 /* UITextField+createTextField.m in Sources */, 2538 4B45CE991EB86A760079AFB7 /* UITextField+createTextField.m in Sources */,
2506 4B45CEA81EB86B9F0079AFB7 /* UserTools.m in Sources */, 2539 4B45CEA81EB86B9F0079AFB7 /* UserTools.m in Sources */,
2507 D217A24A1E7B76C7003B44CB /* PresentView.m in Sources */, 2540 D217A24A1E7B76C7003B44CB /* PresentView.m in Sources */,
2508 D22830F11E778C0F00627701 /* LiveBaseView.m in Sources */, 2541 D22830F11E778C0F00627701 /* LiveBaseView.m in Sources */,
  2542 + 8178D44B1F02045500AA78A4 /* CNBarrageView.m in Sources */,
  2543 + 8178D4311F02044300AA78A4 /* LVCChatRoomModel.m in Sources */,
2509 4B45CEAE1EB873630079AFB7 /* UserInformationModel.m in Sources */, 2544 4B45CEAE1EB873630079AFB7 /* UserInformationModel.m in Sources */,
2510 D2029CBA1E6EADE10027CD92 /* SDWebImageDecoder.m in Sources */, 2545 D2029CBA1E6EADE10027CD92 /* SDWebImageDecoder.m in Sources */,
2511 - 8112D4311E7927A5002E00F6 /* LVCPlayerLoadingView.m in Sources */,  
2512 4B45CE9A1EB86A760079AFB7 /* ZXLabel.m in Sources */, 2546 4B45CE9A1EB86A760079AFB7 /* ZXLabel.m in Sources */,
2513 D2029D081E6EAE2E0027CD92 /* ZXDeviceInfo.m in Sources */, 2547 D2029D081E6EAE2E0027CD92 /* ZXDeviceInfo.m in Sources */,
2514 D24571631E83C40B00AA85D6 /* PrivateView.m in Sources */, 2548 D24571631E83C40B00AA85D6 /* PrivateView.m in Sources */,
2515 D2029CC21E6EADE10027CD92 /* UIImage+WebP.m in Sources */, 2549 D2029CC21E6EADE10027CD92 /* UIImage+WebP.m in Sources */,
2516 4BD856001EBACD530082061D /* AFURLRequestSerialization.m in Sources */, 2550 4BD856001EBACD530082061D /* AFURLRequestSerialization.m in Sources */,
2517 D2029BCD1E6EADD70027CD92 /* BaseViewController.m in Sources */, 2551 D2029BCD1E6EADD70027CD92 /* BaseViewController.m in Sources */,
2518 - 810B64E01E779AE900133E15 /* LVCPlayer.m in Sources */,  
2519 4B45CE811EB86A590079AFB7 /* RegistBasicInformationView.m in Sources */, 2552 4B45CE811EB86A590079AFB7 /* RegistBasicInformationView.m in Sources */,
2520 810B64FF1E779B1F00133E15 /* MASConstraint.m in Sources */, 2553 810B64FF1E779B1F00133E15 /* MASConstraint.m in Sources */,
  2554 + 8178D4611F02060B00AA78A4 /* LVCChatView.m in Sources */,
2521 D25BF87A1E7B8A82007FB138 /* FilterFunctionView.m in Sources */, 2555 D25BF87A1E7B8A82007FB138 /* FilterFunctionView.m in Sources */,
2522 D207BEA11E84C1EC006A0CE8 /* AnimationBaseView.m in Sources */, 2556 D207BEA11E84C1EC006A0CE8 /* AnimationBaseView.m in Sources */,
2523 4B45CE971EB86A760079AFB7 /* UIButton+createButton.m in Sources */, 2557 4B45CE971EB86A760079AFB7 /* UIButton+createButton.m in Sources */,
2524 D2029D001E6EAE2E0027CD92 /* NSNumber+ScaleHeight.m in Sources */, 2558 D2029D001E6EAE2E0027CD92 /* NSNumber+ScaleHeight.m in Sources */,
2525 4BD856041EBACD530082061D /* UIActivityIndicatorView+AFNetworking.m in Sources */, 2559 4BD856041EBACD530082061D /* UIActivityIndicatorView+AFNetworking.m in Sources */,
2526 4B45CE781EB86A590079AFB7 /* LVCMineViewController.m in Sources */, 2560 4B45CE781EB86A590079AFB7 /* LVCMineViewController.m in Sources */,
2527 - 81CE9E1B1E8CF567000F8F6B /* LVCRequestFailedView.m in Sources */,  
2528 D2888D9E1E6EBF1B003A77C8 /* LVCLiveViewController.m in Sources */, 2561 D2888D9E1E6EBF1B003A77C8 /* LVCLiveViewController.m in Sources */,
2529 - 810B650A1E77B39D00133E15 /* LVCFullScreenPlayerController.m in Sources */,  
2530 D20C82BE1EEEA89700BB609F /* LVCHomePageListModel.m in Sources */, 2562 D20C82BE1EEEA89700BB609F /* LVCHomePageListModel.m in Sources */,
2531 4B42A6C71EC0171800DA09D7 /* PlayRecordCell.m in Sources */, 2563 4B42A6C71EC0171800DA09D7 /* PlayRecordCell.m in Sources */,
2532 D217A24E1E7B77C7003B44CB /* ComboCell.m in Sources */, 2564 D217A24E1E7B77C7003B44CB /* ComboCell.m in Sources */,
2533 D24CFC201EFA092300AA6ADB /* JBBannerView.m in Sources */, 2565 D24CFC201EFA092300AA6ADB /* JBBannerView.m in Sources */,
  2566 + 8178D44F1F02045500AA78A4 /* LVCMoreSortTableViewCell.m in Sources */,
2534 D2029CBD1E6EADE10027CD92 /* SDWebImageManager.m in Sources */, 2567 D2029CBD1E6EADE10027CD92 /* SDWebImageManager.m in Sources */,
2535 - 811BB6881E8107B4005C6291 /* LVCChatViewTableViewCell.m in Sources */,  
2536 - 811BB6801E80F858005C6291 /* LVCChatView.m in Sources */,  
2537 D2029CB41E6EADE10027CD92 /* UIView+MJExtension.m in Sources */, 2568 D2029CB41E6EADE10027CD92 /* UIView+MJExtension.m in Sources */,
2538 81FB5B3C1E7A6FFC00F98E1D /* SevenSwitch.m in Sources */, 2569 81FB5B3C1E7A6FFC00F98E1D /* SevenSwitch.m in Sources */,
2539 D2029CA91E6EADE10027CD92 /* MJRefreshAutoStateFooter.m in Sources */, 2570 D2029CA91E6EADE10027CD92 /* MJRefreshAutoStateFooter.m in Sources */,
  2571 + 8178D4511F02045500AA78A4 /* LVCPlayer.m in Sources */,
2540 D2029D061E6EAE2E0027CD92 /* UIView+Extension.m in Sources */, 2572 D2029D061E6EAE2E0027CD92 /* UIView+Extension.m in Sources */,
2541 D25530001E7909AC00DF38A5 /* GiftAnimOperation.m in Sources */, 2573 D25530001E7909AC00DF38A5 /* GiftAnimOperation.m in Sources */,
2542 D2029C9D1E6EADE10027CD92 /* NSObject+MJClass.m in Sources */, 2574 D2029C9D1E6EADE10027CD92 /* NSObject+MJClass.m in Sources */,
@@ -2553,7 +2585,6 @@ @@ -2553,7 +2585,6 @@
2553 D2B7B2541E824B2D00ED084E /* ChatBarrageView.m in Sources */, 2585 D2B7B2541E824B2D00ED084E /* ChatBarrageView.m in Sources */,
2554 D25530061E7911A800DF38A5 /* GiftAnimationAction.m in Sources */, 2586 D25530061E7911A800DF38A5 /* GiftAnimationAction.m in Sources */,
2555 81A483171E88BED00097A80A /* LVCTVLiveViewController.m in Sources */, 2587 81A483171E88BED00097A80A /* LVCTVLiveViewController.m in Sources */,
2556 - 81A1B9A91E8277410079FF5F /* LVCInputView.m in Sources */,  
2557 4B45CE881EB86A590079AFB7 /* LVCMineShowCell.m in Sources */, 2588 4B45CE881EB86A590079AFB7 /* LVCMineShowCell.m in Sources */,
2558 D2029CD41E6EADE70027CD92 /* HttpService.m in Sources */, 2589 D2029CD41E6EADE70027CD92 /* HttpService.m in Sources */,
2559 ); 2590 );
LiveVideoCloud/Classes/Sections/homeSections/Controller/LVCFullScreenPlayerController.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/Controller/LVCFullScreenPlayerController.h
LiveVideoCloud/Classes/Sections/homeSections/Controller/LVCFullScreenPlayerController.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/Controller/LVCFullScreenPlayerController.m
LiveVideoCloud/Classes/Sections/homeSections/Controller/LVCLivePlayerController.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/Controller/LVCLivePlayerController.h
LiveVideoCloud/Classes/Sections/homeSections/Controller/LVCLivePlayerController.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/Controller/LVCLivePlayerController.m
LiveVideoCloud/Classes/Sections/homeSections/Controller/LVCMoreProgramViewController.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/Controller/LVCTelevisioController.h
1 // 1 //
2 -// LVCMoreProgramViewController.h 2 +// LVCTelevisioController.h
3 // LiveVideoCloud 3 // LiveVideoCloud
4 // 4 //
5 -// Created by iOS on 17/3/27. 5 +// Created by iOS on 2017/6/27.
6 // Copyright © 2017年 cnlive. All rights reserved. 6 // Copyright © 2017年 cnlive. All rights reserved.
7 // 7 //
8 8
9 #import <UIKit/UIKit.h> 9 #import <UIKit/UIKit.h>
10 10
11 -@interface LVCMoreProgramViewController : UIViewController  
12 -  
13 -@property (nonatomic, strong) NSString *cid; 11 +@interface LVCTelevisioController : UIViewController
14 12
15 @end 13 @end
LiveVideoCloud/Classes/Sections/PGCSections/Controller/LVCTelevisioController.m 0 → 100644
  1 +//
  2 +// LVCTelevisioController.m
  3 +// LiveVideoCloud
  4 +//
  5 +// Created by iOS on 2017/6/27.
  6 +// Copyright © 2017年 cnlive. All rights reserved.
  7 +//
  8 +
  9 +#import "LVCTelevisioController.h"
  10 +#import "LVCLiveListCollectionViewCell.h"
  11 +#import "LVCFirstHeaderReusableView.h"
  12 +#import "LVCOtherHeaderReusableView.h"
  13 +#import "LVCChannelDetailsModel.h"
  14 +#import "LVCChannelsModel.h"
  15 +#import "LVCLivePlayerController.h"
  16 +
  17 +static NSString *cellId = @"LVCLiveListCollectionViewCell";
  18 +static NSString *firstHeaderId = @"LVCFirstHeaderReusableView";
  19 +static NSString *otherHeaderId = @"LVCOtherHeaderReusableView";
  20 +
  21 +@interface LVCTelevisioController ()
  22 +
  23 +@property (nonatomic, strong) UICollectionView *collectionView;
  24 +@property (nonatomic, strong) NSArray *bannerModelArray; //banner数据源
  25 +@property (nonatomic, strong) NSArray *marqueeModelArray;
  26 +@property (nonatomic, strong) NSArray *channelsModelArray;
  27 +
  28 +@end
  29 +
  30 +@implementation LVCTelevisioController
  31 +
  32 +- (void)viewDidLoad {
  33 + [super viewDidLoad];
  34 + // Do any additional setup after loading the view.
  35 + self.view.backgroundColor = [UIColor whiteColor];
  36 +
  37 + [self.view addSubview:self.collectionView];
  38 + [self loadData];
  39 +
  40 +}
  41 +
  42 +#pragma mark -
  43 +#pragma mark - UICollectionViewDataSource
  44 +- (NSInteger)numberOfSectionsInCollectionView:(UICollectionView *)collectionView {
  45 + if (self.channelsModelArray.count > 0) {
  46 + return self.channelsModelArray.count + 1;
  47 + }
  48 + return self.channelsModelArray.count;
  49 +}
  50 +
  51 +- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
  52 +
  53 + if (section == 0) {
  54 + return 0;
  55 + }
  56 + LVCChannelsModel *model = self.channelsModelArray[section - 1];
  57 +
  58 + NSArray *array = model.programs;
  59 +
  60 + return array.count;
  61 +}
  62 +
  63 +- (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
  64 +
  65 + LVCLiveListCollectionViewCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:cellId forIndexPath:indexPath];
  66 + LVCChannelsModel *model = _channelsModelArray[indexPath.section - 1];
  67 +
  68 + LVCChannelDetailsModel *details = model.programs[indexPath.item];
  69 +
  70 + cell.details = details;
  71 +
  72 + return cell;
  73 +}
  74 +
  75 +- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath {
  76 +
  77 + if (kind == UICollectionElementKindSectionHeader) {
  78 +
  79 + if (indexPath.section == 0) {
  80 +
  81 + LVCFirstHeaderReusableView *firstHeaderView = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:firstHeaderId forIndexPath:indexPath];
  82 +
  83 + firstHeaderView.imageUrls = [self bannerImage];
  84 + firstHeaderView.modelArray = self.bannerModelArray;
  85 +
  86 + return firstHeaderView;
  87 + } else {
  88 +
  89 + LVCOtherHeaderReusableView *otherHeaderView = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:otherHeaderId forIndexPath:indexPath];
  90 +
  91 + LVCChannelsModel *model = _channelsModelArray[indexPath.section - 1];
  92 +
  93 + otherHeaderView.model = model;
  94 +
  95 + return otherHeaderView;
  96 + }
  97 + }
  98 + return nil;
  99 +}
  100 +
  101 +- (NSArray <NSURL *>*)bannerImage {
  102 +
  103 + NSMutableArray *arrayM = [NSMutableArray array];
  104 + for (LVCChannelDetailsModel *model in _bannerModelArray) {
  105 + NSString *imgStr = model.img;
  106 + NSURL *url = [NSURL URLWithString:imgStr];
  107 + [arrayM addObject:url];
  108 + }
  109 + return arrayM.copy;
  110 +}
  111 +
  112 +- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section {
  113 +
  114 + if (section == 0) {
  115 + return CGSizeMake(SCREEN_WIDTH, SCREEN_WIDTH * 0.5);
  116 + }else {
  117 + return CGSizeMake(SCREEN_WIDTH, 47);
  118 + }
  119 +}
  120 +
  121 +#pragma mark -
  122 +#pragma mark - UICollectionViewDelegate
  123 +- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
  124 +
  125 + LVCChannelsModel *model = _channelsModelArray[indexPath.section - 1];
  126 + LVCChannelDetailsModel *details = model.programs[indexPath.item];
  127 +
  128 + LVCLivePlayerController *playVC = [[LVCLivePlayerController alloc] init];
  129 + playVC.model = details;
  130 + self.navigationController.navigationBar.hidden = YES;
  131 + [self.navigationController pushViewController:playVC animated:YES];
  132 + self.hidesBottomBarWhenPushed = NO;
  133 +}
  134 +
  135 +#pragma mark -
  136 +#pragma mark - 加载数据
  137 +- (void)loadData {
  138 +
  139 + NSString *path = [[NSBundle mainBundle] pathForResource:@"JsonFile" ofType:@"json"];
  140 + NSData *data=[NSData dataWithContentsOfFile:path];
  141 + NSError *error;
  142 + id responseObject=[NSJSONSerialization JSONObjectWithData:data
  143 + options:NSJSONReadingAllowFragments
  144 + error:&error];
  145 + // NSLog(@"%@",responseObject);
  146 +
  147 + if (responseObject[@"channels"] && [responseObject[@"channels"] isKindOfClass:[NSArray class]]) {
  148 +
  149 + NSMutableArray *arrayM = [[NSMutableArray alloc]init];
  150 + for (NSDictionary *dict in responseObject[@"channels"]) {
  151 + LVCChannelsModel *model = [LVCChannelsModel mj_objectWithKeyValues:dict];
  152 + [arrayM addObject:model];
  153 + }
  154 + self.channelsModelArray = arrayM;
  155 + }
  156 + if (responseObject[@"banner"] && [responseObject[@"banner"] isKindOfClass:[NSArray class]]) {
  157 +
  158 + NSMutableArray *arrayM = [NSMutableArray array];
  159 + for (NSDictionary *dict in responseObject[@"banner"]) {
  160 + LVCChannelDetailsModel *rollModel = [LVCChannelDetailsModel mj_objectWithKeyValues:dict];
  161 + [arrayM addObject:rollModel];
  162 + }
  163 + self.bannerModelArray = arrayM;
  164 + }
  165 + [self.collectionView reloadData];
  166 +
  167 +}
  168 +
  169 +#pragma mark -
  170 +#pragma mark - getter
  171 +- (UICollectionView *)collectionView {
  172 +
  173 + if (!_collectionView) {
  174 +
  175 + UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];
  176 + layout.itemSize = CGSizeMake((SCREEN_WIDTH-30)/2, (SCREEN_WIDTH-30)/2*9/16+65);
  177 + layout.minimumLineSpacing = 0;
  178 + layout.minimumInteritemSpacing = 0;
  179 + layout.sectionInset = UIEdgeInsetsMake(6, 10, 0, 10);
  180 + _collectionView.showsHorizontalScrollIndicator = NO;
  181 +
  182 + _collectionView = [[UICollectionView alloc]initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT-64-49) collectionViewLayout:layout];
  183 + _collectionView.backgroundColor = [UIColor whiteColor];
  184 +
  185 + [_collectionView registerClass:[LVCLiveListCollectionViewCell class] forCellWithReuseIdentifier:cellId];
  186 + [_collectionView registerClass:[LVCFirstHeaderReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:firstHeaderId];
  187 + [_collectionView registerClass:[LVCOtherHeaderReusableView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:otherHeaderId];
  188 + _collectionView.scrollsToTop = NO;
  189 + _collectionView.dataSource = self;
  190 + _collectionView.delegate = self;
  191 + }
  192 + return _collectionView;
  193 +}
  194 +
  195 +
  196 +- (void)didReceiveMemoryWarning {
  197 + [super didReceiveMemoryWarning];
  198 + // Dispose of any resources that can be recreated.
  199 +}
  200 +
  201 +/*
  202 +#pragma mark - Navigation
  203 +
  204 +// In a storyboard-based application, you will often want to do a little preparation before navigation
  205 +- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
  206 + // Get the new view controller using [segue destinationViewController].
  207 + // Pass the selected object to the new view controller.
  208 +}
  209 +*/
  210 +
  211 +@end
LiveVideoCloud/Classes/Sections/homeSections/Model/LVCChannelDetailsModel.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/Model/LVCChannelDetailsModel.h
LiveVideoCloud/Classes/Sections/homeSections/Model/LVCChannelDetailsModel.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/Model/LVCChannelDetailsModel.m
LiveVideoCloud/Classes/Sections/homeSections/Model/LVCChannelsModel.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/Model/LVCChannelsModel.h
LiveVideoCloud/Classes/Sections/homeSections/Model/LVCChannelsModel.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/Model/LVCChannelsModel.m
LiveVideoCloud/Classes/Sections/homeSections/Model/LVCChatRoomModel.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/Model/LVCChatRoomModel.h
LiveVideoCloud/Classes/Sections/homeSections/Model/LVCChatRoomModel.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/Model/LVCChatRoomModel.m
LiveVideoCloud/Classes/Sections/homeSections/Model/LVCProgramModel.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/Model/LVCProgramModel.h
LiveVideoCloud/Classes/Sections/homeSections/Model/LVCProgramModel.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/Model/LVCProgramModel.m
LiveVideoCloud/Classes/Sections/homeSections/View/Barrage/CNBarrageManager.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/Barrage/CNBarrageManager.h
LiveVideoCloud/Classes/Sections/homeSections/View/Barrage/CNBarrageManager.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/Barrage/CNBarrageManager.m
LiveVideoCloud/Classes/Sections/homeSections/View/Barrage/CNBarrageView.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/Barrage/CNBarrageView.h
LiveVideoCloud/Classes/Sections/homeSections/View/Barrage/CNBarrageView.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/Barrage/CNBarrageView.m
LiveVideoCloud/Classes/Sections/homeSections/ChatView/LVCChatView.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/ChatView/LVCChatView.h
LiveVideoCloud/Classes/Sections/homeSections/ChatView/LVCChatView.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/ChatView/LVCChatView.m
LiveVideoCloud/Classes/Sections/homeSections/ChatView/LVCChatViewTableViewCell.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/ChatView/LVCChatViewTableViewCell.h
LiveVideoCloud/Classes/Sections/homeSections/ChatView/LVCChatViewTableViewCell.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/ChatView/LVCChatViewTableViewCell.m
LiveVideoCloud/Classes/Sections/homeSections/ChatView/LVCInputView.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/ChatView/LVCInputView.h
LiveVideoCloud/Classes/Sections/homeSections/ChatView/LVCInputView.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/ChatView/LVCInputView.m
LiveVideoCloud/Classes/Sections/homeSections/ChatView/LVCMessage.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/ChatView/LVCMessage.h
LiveVideoCloud/Classes/Sections/homeSections/ChatView/LVCMessage.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/ChatView/LVCMessage.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCFirstHeaderReusableView.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCFirstHeaderReusableView.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCFirstHeaderReusableView.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCFirstHeaderReusableView.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCHeaderRollCollectionViewCell.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCHeaderRollCollectionViewCell.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCHeaderRollCollectionViewCell.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCHeaderRollCollectionViewCell.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCLiveListCollectionViewCell.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCLiveListCollectionViewCell.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCLiveListCollectionViewCell.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCLiveListCollectionViewCell.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCMoreSortTableViewCell.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCMoreSortTableViewCell.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCMoreSortTableViewCell.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCMoreSortTableViewCell.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCOtherHeaderReusableView.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCOtherHeaderReusableView.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCOtherHeaderReusableView.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCOtherHeaderReusableView.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCPlayer.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCPlayer.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCPlayer.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCPlayer.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCPlayerLoadingView.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCPlayerLoadingView.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCPlayerLoadingView.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCPlayerLoadingView.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCRequestFailedView.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCRequestFailedView.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCRequestFailedView.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCRequestFailedView.m
LiveVideoCloud/Classes/Sections/homeSections/View/LVCTelevisionView.h renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCTelevisionView.h
LiveVideoCloud/Classes/Sections/homeSections/View/LVCTelevisionView.m renamed to LiveVideoCloud/Classes/Sections/PGCSections/View/LVCTelevisionView.m
LiveVideoCloud/Classes/Sections/homeSections/Controller/LVCMoreProgramViewController.m deleted 100644 → 0
1 -//  
2 -// LVCMoreProgramViewController.m  
3 -// LiveVideoCloud  
4 -//  
5 -// Created by iOS on 17/3/27.  
6 -// Copyright © 2017年 cnlive. All rights reserved.  
7 -//  
8 -  
9 -#import "LVCMoreProgramViewController.h"  
10 -#import "LVCMoreSortTableViewCell.h"  
11 -#import "LVCProgramModel.h"  
12 -#import "LVCChannelsModel.h"  
13 -#import "LVCLivePlayerController.h"  
14 -  
15 -@interface LVCMoreProgramViewController ()<UITableViewDelegate,UITableViewDataSource>  
16 -{  
17 - NSMutableArray *_data;  
18 - int _page; //请求数据的页数  
19 - int _next;  
20 -}  
21 -@property (nonatomic, strong)UITableView *tableView;  
22 -@property (nonatomic, strong) UIView *bbView;  
23 -  
24 -@end  
25 -  
26 -@implementation LVCMoreProgramViewController  
27 -  
28 -- (void)viewDidLoad {  
29 - [super viewDidLoad];  
30 - self.view.backgroundColor = [UIColor backgroundColorZX];  
31 - _data = [[NSMutableArray alloc] init];  
32 - [self.view addSubview:self.tableView];  
33 -}  
34 -  
35 -- (void)setCid:(NSString *)cid {  
36 - _cid = cid;  
37 - [self.tableView.header beginRefreshing];  
38 -}  
39 -  
40 -- (void)request:(int)page refresh:(BOOL)refresh  
41 -{  
42 - NSDictionary *parameters = @{@"page": [NSString stringWithFormat:@"%d", page],  
43 - @"pagesize": @"15",  
44 - @"cid": self.cid ? self.cid : @"",  
45 - @"type": @"live",  
46 - @"version": @"5.3", @"appid": @"spzg", @"plat": @"a"};  
47 - [[AFHTTPSessionManager manager] GET:@"http://app.jczb.cnlive.com/api/catprogramlist" parameters:parameters success:^(NSURLSessionDataTask *task, id responseObject) {  
48 - if (refresh) {  
49 - _page = 1;  
50 - [_tableView.header endRefreshing];  
51 - [_data removeAllObjects];  
52 - } else {  
53 - [_tableView.footer endRefreshing];  
54 - }  
55 -  
56 - _next = [[responseObject objectForKey:@"next_cursor"] intValue];  
57 - for (NSDictionary *dic in [responseObject objectForKey:@"programs"]) {  
58 - LVCProgramModel *model = [LVCProgramModel mj_objectWithKeyValues:dic];  
59 - [_data addObject:model];  
60 - }  
61 -  
62 - [_tableView reloadData];  
63 - } failure:^(NSURLSessionDataTask *task, NSError *error) {  
64 - if (refresh) {  
65 - [_tableView.header endRefreshing];  
66 - } else {  
67 - _page -= 1;  
68 - [_tableView.footer endRefreshing];  
69 - }  
70 -  
71 - NSLog(@"电视台更多节目列表获取失败");  
72 -  
73 - }];  
74 -  
75 -  
76 -}  
77 -  
78 -- (void)refreshAction  
79 -{  
80 - [self request:1 refresh:YES];  
81 -}  
82 -  
83 -- (void)loadMoreAction  
84 -{  
85 - _page += 1;  
86 - if (_next == 0) {  
87 - if (_page != 1) {  
88 - [_tableView.footer endRefreshing];  
89 - return ;  
90 - }  
91 - } else {  
92 - [self request:_page refresh:NO];  
93 - }  
94 -}  
95 -  
96 -#pragma mark -  
97 -#pragma mark - UITableView  
98 -- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section  
99 -{  
100 - return _data.count;  
101 -}  
102 -  
103 -- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath  
104 -{  
105 - static NSString *identify = @"liveMoreProgramCell";  
106 - LVCMoreSortTableViewCell *cell = (LVCMoreSortTableViewCell *)[tableView dequeueReusableCellWithIdentifier:identify];  
107 - if (cell == nil) {  
108 - cell = [[LVCMoreSortTableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:identify];  
109 - if ([cell respondsToSelector:@selector(setSeparatorInset:)]) {  
110 - cell.separatorInset = UIEdgeInsetsZero;  
111 - }  
112 - if ([cell respondsToSelector:@selector(setLayoutMargins:)]) {  
113 - cell.layoutMargins = UIEdgeInsetsZero;  
114 - }  
115 - }  
116 - cell.model = [_data objectAtIndex:indexPath.row];  
117 - return cell;  
118 -}  
119 -  
120 -- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath  
121 -{  
122 - if (SCREEN_WIDTH == 320.0) {  
123 - return 80.0;  
124 - } else if (SCREEN_WIDTH == 375.0) {  
125 - return 93.0;  
126 - } else if (SCREEN_WIDTH == 414.0) {  
127 - return 103.0;  
128 - }  
129 -  
130 - return 93.0;  
131 -}  
132 -  
133 -- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath  
134 -{  
135 - [tableView deselectRowAtIndexPath:indexPath animated:YES];  
136 -  
137 - LVCChannelDetailsModel *details = _data[indexPath.row];  
138 - LVCLivePlayerController *playVC = [[LVCLivePlayerController alloc] init];  
139 - playVC.model = details;  
140 - self.navigationController.navigationBar.hidden = YES;  
141 - self.hidesBottomBarWhenPushed = YES;  
142 - [self.navigationController pushViewController:playVC animated:YES];  
143 -}  
144 -  
145 -#pragma mark -  
146 -#pragma mark - getter  
147 -- (UITableView *)tableView  
148 -{  
149 - if (!_tableView) {  
150 - _tableView = [[UITableView alloc] initWithFrame:CGRectMake(0, 0, SCREEN_WIDTH, SCREEN_HEIGHT) style:UITableViewStylePlain];  
151 - _tableView.showsHorizontalScrollIndicator = NO;  
152 - _tableView.showsVerticalScrollIndicator = NO;  
153 - _tableView.delegate = self;  
154 - _tableView.dataSource = self;  
155 - _tableView.backgroundColor = [UIColor clearColor];  
156 - _tableView.tableFooterView = [[UIView alloc] initWithFrame:CGRectZero];  
157 - _tableView.header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(refreshAction)];  
158 - _tableView.footer = [MJRefreshAutoNormalFooter footerWithRefreshingTarget:self refreshingAction:@selector(loadMoreAction)];  
159 - if ([_tableView respondsToSelector:@selector(setSeparatorInset:)]) {  
160 - [_tableView setSeparatorInset:UIEdgeInsetsMake(0,0,0,0)];  
161 - }  
162 -  
163 - if ([_tableView respondsToSelector:@selector(setLayoutMargins:)]) {  
164 - [_tableView setLayoutMargins:UIEdgeInsetsMake(0,0,0,0)];  
165 - }  
166 - _tableView.backgroundColor = [UIColor clearColor];  
167 - }  
168 - return _tableView;  
169 -}  
170 -  
171 -  
172 -  
173 -- (void)didReceiveMemoryWarning {  
174 - [super didReceiveMemoryWarning];  
175 - // Dispose of any resources that can be recreated.  
176 -}  
177 -  
178 -/*  
179 -#pragma mark - Navigation  
180 -  
181 -// In a storyboard-based application, you will often want to do a little preparation before navigation  
182 -- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {  
183 - // Get the new view controller using [segue destinationViewController].  
184 - // Pass the selected object to the new view controller.  
185 -}  
186 -*/  
187 -  
188 -@end