首页UI更改
@@ -178,6 +178,10 @@
|
|||||||
231EBB4B2B34112C006F782E /* MewMainHomePartyHeadHotCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB4A2B34112C006F782E /* MewMainHomePartyHeadHotCell.m */; };
|
231EBB4B2B34112C006F782E /* MewMainHomePartyHeadHotCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB4A2B34112C006F782E /* MewMainHomePartyHeadHotCell.m */; };
|
||||||
231EBB4E2B341DE0006F782E /* MewMainHomeHotRoomModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB4D2B341DE0006F782E /* MewMainHomeHotRoomModel.m */; };
|
231EBB4E2B341DE0006F782E /* MewMainHomeHotRoomModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB4D2B341DE0006F782E /* MewMainHomeHotRoomModel.m */; };
|
||||||
231EBB512B3433B7006F782E /* MewMainHomeMenuDataModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB502B3433B7006F782E /* MewMainHomeMenuDataModel.m */; };
|
231EBB512B3433B7006F782E /* MewMainHomeMenuDataModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB502B3433B7006F782E /* MewMainHomeMenuDataModel.m */; };
|
||||||
|
231EBB542B352ADE006F782E /* MewMainHomeMakeFriendHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB532B352ADE006F782E /* MewMainHomeMakeFriendHeadView.m */; };
|
||||||
|
231EBB572B3532E4006F782E /* MewMainHomeMakeFriendHeadCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB562B3532E4006F782E /* MewMainHomeMakeFriendHeadCell.m */; };
|
||||||
|
231EBB5A2B355D9D006F782E /* MewMainHomeMakeFriendCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB592B355D9D006F782E /* MewMainHomeMakeFriendCell.m */; };
|
||||||
|
231EBB5D2B358C4C006F782E /* MewMainHomeGameTabModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 231EBB5C2B358C4C006F782E /* MewMainHomeGameTabModel.m */; };
|
||||||
232153DD2AF381E400B2FBC0 /* MovEncodeToMpegTool.m in Sources */ = {isa = PBXBuildFile; fileRef = 232153DC2AF381E400B2FBC0 /* MovEncodeToMpegTool.m */; };
|
232153DD2AF381E400B2FBC0 /* MovEncodeToMpegTool.m in Sources */ = {isa = PBXBuildFile; fileRef = 232153DC2AF381E400B2FBC0 /* MovEncodeToMpegTool.m */; };
|
||||||
232153E02AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 232153DF2AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.m */; };
|
232153E02AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 232153DF2AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.m */; };
|
||||||
236FF06C2AF8892400BEB6EC /* XPClientH5UresModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 236FF06B2AF8892400BEB6EC /* XPClientH5UresModel.m */; };
|
236FF06C2AF8892400BEB6EC /* XPClientH5UresModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 236FF06B2AF8892400BEB6EC /* XPClientH5UresModel.m */; };
|
||||||
@@ -198,6 +202,15 @@
|
|||||||
237B8A162A973B7E005DB380 /* XPMineGameOrderItemPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B8A152A973B7E005DB380 /* XPMineGameOrderItemPresenter.m */; };
|
237B8A162A973B7E005DB380 /* XPMineGameOrderItemPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B8A152A973B7E005DB380 /* XPMineGameOrderItemPresenter.m */; };
|
||||||
237B8A1A2A973C54005DB380 /* Api+GameOrder.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B8A192A973C54005DB380 /* Api+GameOrder.m */; };
|
237B8A1A2A973C54005DB380 /* Api+GameOrder.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B8A192A973C54005DB380 /* Api+GameOrder.m */; };
|
||||||
237B94C32A98B46E007853E3 /* XPSessionMessageGameInfoView.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B94C22A98B46E007853E3 /* XPSessionMessageGameInfoView.m */; };
|
237B94C32A98B46E007853E3 /* XPSessionMessageGameInfoView.m in Sources */ = {isa = PBXBuildFile; fileRef = 237B94C22A98B46E007853E3 /* XPSessionMessageGameInfoView.m */; };
|
||||||
|
23844FA72B3926A2002AD661 /* MewMainHomeMoreGameVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 23844FA62B3926A2002AD661 /* MewMainHomeMoreGameVC.m */; };
|
||||||
|
23844FAD2B39274F002AD661 /* MewMainHomeMoreGameHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 23844FAC2B39274F002AD661 /* MewMainHomeMoreGameHeadView.m */; };
|
||||||
|
23844FB02B3927B3002AD661 /* MewMainHomeMoreGameHeadCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23844FAF2B3927B3002AD661 /* MewMainHomeMoreGameHeadCell.m */; };
|
||||||
|
23844FB32B392A7B002AD661 /* MewMainHomeMoreGameCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23844FB22B392A7B002AD661 /* MewMainHomeMoreGameCell.m */; };
|
||||||
|
23844FB62B3932D9002AD661 /* MewMainHomeMakeFriendModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 23844FB52B3932D9002AD661 /* MewMainHomeMakeFriendModel.m */; };
|
||||||
|
23844FB82B397C4A002AD661 /* kMewMainHomePlayVoice.svga in Resources */ = {isa = PBXBuildFile; fileRef = 23844FB72B397C4A002AD661 /* kMewMainHomePlayVoice.svga */; };
|
||||||
|
23844FBB2B39892B002AD661 /* MewMainHomeLittleGameInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 23844FBA2B39892B002AD661 /* MewMainHomeLittleGameInfoModel.m */; };
|
||||||
|
23844FBE2B398F18002AD661 /* MewMainHomeMoreGameModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 23844FBD2B398F18002AD661 /* MewMainHomeMoreGameModel.m */; };
|
||||||
|
23844FC12B3A6DAA002AD661 /* MewMainHomeMakeFriendEmptyCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23844FC02B3A6DAA002AD661 /* MewMainHomeMakeFriendEmptyCell.m */; };
|
||||||
23CEFB692AFB32BE00576D89 /* XPRoomAnimationTool.m in Sources */ = {isa = PBXBuildFile; fileRef = 23CEFB682AFB32BE00576D89 /* XPRoomAnimationTool.m */; };
|
23CEFB692AFB32BE00576D89 /* XPRoomAnimationTool.m in Sources */ = {isa = PBXBuildFile; fileRef = 23CEFB682AFB32BE00576D89 /* XPRoomAnimationTool.m */; };
|
||||||
23E1708C2AED2E080039DE62 /* YYTextAsyncLayer+XPTextAsyncLayer.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E1708B2AED2E080039DE62 /* YYTextAsyncLayer+XPTextAsyncLayer.m */; };
|
23E1708C2AED2E080039DE62 /* YYTextAsyncLayer+XPTextAsyncLayer.m in Sources */ = {isa = PBXBuildFile; fileRef = 23E1708B2AED2E080039DE62 /* YYTextAsyncLayer+XPTextAsyncLayer.m */; };
|
||||||
23F8BFF82A7A392000A36763 /* XPRoomMessagePrivilegeCardCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23F8BFF72A7A392000A36763 /* XPRoomMessagePrivilegeCardCell.m */; };
|
23F8BFF82A7A392000A36763 /* XPRoomMessagePrivilegeCardCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23F8BFF72A7A392000A36763 /* XPRoomMessagePrivilegeCardCell.m */; };
|
||||||
@@ -1723,6 +1736,14 @@
|
|||||||
231EBB4D2B341DE0006F782E /* MewMainHomeHotRoomModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeHotRoomModel.m; sourceTree = "<group>"; };
|
231EBB4D2B341DE0006F782E /* MewMainHomeHotRoomModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeHotRoomModel.m; sourceTree = "<group>"; };
|
||||||
231EBB4F2B3433B7006F782E /* MewMainHomeMenuDataModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMenuDataModel.h; sourceTree = "<group>"; };
|
231EBB4F2B3433B7006F782E /* MewMainHomeMenuDataModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMenuDataModel.h; sourceTree = "<group>"; };
|
||||||
231EBB502B3433B7006F782E /* MewMainHomeMenuDataModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMenuDataModel.m; sourceTree = "<group>"; };
|
231EBB502B3433B7006F782E /* MewMainHomeMenuDataModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMenuDataModel.m; sourceTree = "<group>"; };
|
||||||
|
231EBB522B352ADE006F782E /* MewMainHomeMakeFriendHeadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMakeFriendHeadView.h; sourceTree = "<group>"; };
|
||||||
|
231EBB532B352ADE006F782E /* MewMainHomeMakeFriendHeadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMakeFriendHeadView.m; sourceTree = "<group>"; };
|
||||||
|
231EBB552B3532E4006F782E /* MewMainHomeMakeFriendHeadCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMakeFriendHeadCell.h; sourceTree = "<group>"; };
|
||||||
|
231EBB562B3532E4006F782E /* MewMainHomeMakeFriendHeadCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMakeFriendHeadCell.m; sourceTree = "<group>"; };
|
||||||
|
231EBB582B355D9D006F782E /* MewMainHomeMakeFriendCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMakeFriendCell.h; sourceTree = "<group>"; };
|
||||||
|
231EBB592B355D9D006F782E /* MewMainHomeMakeFriendCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMakeFriendCell.m; sourceTree = "<group>"; };
|
||||||
|
231EBB5B2B358C4C006F782E /* MewMainHomeGameTabModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeGameTabModel.h; sourceTree = "<group>"; };
|
||||||
|
231EBB5C2B358C4C006F782E /* MewMainHomeGameTabModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeGameTabModel.m; sourceTree = "<group>"; };
|
||||||
232153DB2AF381E400B2FBC0 /* MovEncodeToMpegTool.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MovEncodeToMpegTool.h; sourceTree = "<group>"; };
|
232153DB2AF381E400B2FBC0 /* MovEncodeToMpegTool.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MovEncodeToMpegTool.h; sourceTree = "<group>"; };
|
||||||
232153DC2AF381E400B2FBC0 /* MovEncodeToMpegTool.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MovEncodeToMpegTool.m; sourceTree = "<group>"; };
|
232153DC2AF381E400B2FBC0 /* MovEncodeToMpegTool.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MovEncodeToMpegTool.m; sourceTree = "<group>"; };
|
||||||
232153DE2AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPPrivilegeCardVideoItemModel.h; sourceTree = "<group>"; };
|
232153DE2AF394BF00B2FBC0 /* XPPrivilegeCardVideoItemModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPPrivilegeCardVideoItemModel.h; sourceTree = "<group>"; };
|
||||||
@@ -1764,6 +1785,23 @@
|
|||||||
237B8A192A973C54005DB380 /* Api+GameOrder.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "Api+GameOrder.m"; sourceTree = "<group>"; };
|
237B8A192A973C54005DB380 /* Api+GameOrder.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "Api+GameOrder.m"; sourceTree = "<group>"; };
|
||||||
237B94C12A98B46E007853E3 /* XPSessionMessageGameInfoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSessionMessageGameInfoView.h; sourceTree = "<group>"; };
|
237B94C12A98B46E007853E3 /* XPSessionMessageGameInfoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSessionMessageGameInfoView.h; sourceTree = "<group>"; };
|
||||||
237B94C22A98B46E007853E3 /* XPSessionMessageGameInfoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPSessionMessageGameInfoView.m; sourceTree = "<group>"; };
|
237B94C22A98B46E007853E3 /* XPSessionMessageGameInfoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPSessionMessageGameInfoView.m; sourceTree = "<group>"; };
|
||||||
|
23844FA52B3926A2002AD661 /* MewMainHomeMoreGameVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMoreGameVC.h; sourceTree = "<group>"; };
|
||||||
|
23844FA62B3926A2002AD661 /* MewMainHomeMoreGameVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMoreGameVC.m; sourceTree = "<group>"; };
|
||||||
|
23844FAB2B39274F002AD661 /* MewMainHomeMoreGameHeadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMoreGameHeadView.h; sourceTree = "<group>"; };
|
||||||
|
23844FAC2B39274F002AD661 /* MewMainHomeMoreGameHeadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMoreGameHeadView.m; sourceTree = "<group>"; };
|
||||||
|
23844FAE2B3927B3002AD661 /* MewMainHomeMoreGameHeadCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMoreGameHeadCell.h; sourceTree = "<group>"; };
|
||||||
|
23844FAF2B3927B3002AD661 /* MewMainHomeMoreGameHeadCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMoreGameHeadCell.m; sourceTree = "<group>"; };
|
||||||
|
23844FB12B392A7B002AD661 /* MewMainHomeMoreGameCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMoreGameCell.h; sourceTree = "<group>"; };
|
||||||
|
23844FB22B392A7B002AD661 /* MewMainHomeMoreGameCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMoreGameCell.m; sourceTree = "<group>"; };
|
||||||
|
23844FB42B3932D9002AD661 /* MewMainHomeMakeFriendModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMakeFriendModel.h; sourceTree = "<group>"; };
|
||||||
|
23844FB52B3932D9002AD661 /* MewMainHomeMakeFriendModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMakeFriendModel.m; sourceTree = "<group>"; };
|
||||||
|
23844FB72B397C4A002AD661 /* kMewMainHomePlayVoice.svga */ = {isa = PBXFileReference; lastKnownFileType = file; path = kMewMainHomePlayVoice.svga; sourceTree = "<group>"; };
|
||||||
|
23844FB92B39892B002AD661 /* MewMainHomeLittleGameInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeLittleGameInfoModel.h; sourceTree = "<group>"; };
|
||||||
|
23844FBA2B39892B002AD661 /* MewMainHomeLittleGameInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeLittleGameInfoModel.m; sourceTree = "<group>"; };
|
||||||
|
23844FBC2B398F18002AD661 /* MewMainHomeMoreGameModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMoreGameModel.h; sourceTree = "<group>"; };
|
||||||
|
23844FBD2B398F18002AD661 /* MewMainHomeMoreGameModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMoreGameModel.m; sourceTree = "<group>"; };
|
||||||
|
23844FBF2B3A6DAA002AD661 /* MewMainHomeMakeFriendEmptyCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MewMainHomeMakeFriendEmptyCell.h; sourceTree = "<group>"; };
|
||||||
|
23844FC02B3A6DAA002AD661 /* MewMainHomeMakeFriendEmptyCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MewMainHomeMakeFriendEmptyCell.m; sourceTree = "<group>"; };
|
||||||
23CEFB672AFB32BE00576D89 /* XPRoomAnimationTool.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomAnimationTool.h; sourceTree = "<group>"; };
|
23CEFB672AFB32BE00576D89 /* XPRoomAnimationTool.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomAnimationTool.h; sourceTree = "<group>"; };
|
||||||
23CEFB682AFB32BE00576D89 /* XPRoomAnimationTool.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomAnimationTool.m; sourceTree = "<group>"; };
|
23CEFB682AFB32BE00576D89 /* XPRoomAnimationTool.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomAnimationTool.m; sourceTree = "<group>"; };
|
||||||
23E1708A2AED2E080039DE62 /* YYTextAsyncLayer+XPTextAsyncLayer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "YYTextAsyncLayer+XPTextAsyncLayer.h"; path = "xplan-ios/Appdelegate/YYTextAsyncLayer+XPTextAsyncLayer.h"; sourceTree = SOURCE_ROOT; };
|
23E1708A2AED2E080039DE62 /* YYTextAsyncLayer+XPTextAsyncLayer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "YYTextAsyncLayer+XPTextAsyncLayer.h"; path = "xplan-ios/Appdelegate/YYTextAsyncLayer+XPTextAsyncLayer.h"; sourceTree = SOURCE_ROOT; };
|
||||||
@@ -4809,6 +4847,14 @@
|
|||||||
231EBB4D2B341DE0006F782E /* MewMainHomeHotRoomModel.m */,
|
231EBB4D2B341DE0006F782E /* MewMainHomeHotRoomModel.m */,
|
||||||
231EBB4F2B3433B7006F782E /* MewMainHomeMenuDataModel.h */,
|
231EBB4F2B3433B7006F782E /* MewMainHomeMenuDataModel.h */,
|
||||||
231EBB502B3433B7006F782E /* MewMainHomeMenuDataModel.m */,
|
231EBB502B3433B7006F782E /* MewMainHomeMenuDataModel.m */,
|
||||||
|
231EBB5B2B358C4C006F782E /* MewMainHomeGameTabModel.h */,
|
||||||
|
231EBB5C2B358C4C006F782E /* MewMainHomeGameTabModel.m */,
|
||||||
|
23844FB42B3932D9002AD661 /* MewMainHomeMakeFriendModel.h */,
|
||||||
|
23844FB52B3932D9002AD661 /* MewMainHomeMakeFriendModel.m */,
|
||||||
|
23844FB92B39892B002AD661 /* MewMainHomeLittleGameInfoModel.h */,
|
||||||
|
23844FBA2B39892B002AD661 /* MewMainHomeLittleGameInfoModel.m */,
|
||||||
|
23844FBC2B398F18002AD661 /* MewMainHomeMoreGameModel.h */,
|
||||||
|
23844FBD2B398F18002AD661 /* MewMainHomeMoreGameModel.m */,
|
||||||
);
|
);
|
||||||
path = MewHomeModel;
|
path = MewHomeModel;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -4833,6 +4879,8 @@
|
|||||||
231EBB252B32E291006F782E /* MewMainHomePartyVC.m */,
|
231EBB252B32E291006F782E /* MewMainHomePartyVC.m */,
|
||||||
231EBB272B32E380006F782E /* MewMainHomeMakeFriendVC.h */,
|
231EBB272B32E380006F782E /* MewMainHomeMakeFriendVC.h */,
|
||||||
231EBB282B32E380006F782E /* MewMainHomeMakeFriendVC.m */,
|
231EBB282B32E380006F782E /* MewMainHomeMakeFriendVC.m */,
|
||||||
|
23844FA52B3926A2002AD661 /* MewMainHomeMoreGameVC.h */,
|
||||||
|
23844FA62B3926A2002AD661 /* MewMainHomeMoreGameVC.m */,
|
||||||
);
|
);
|
||||||
path = MewHomeView;
|
path = MewHomeView;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -4848,6 +4896,10 @@
|
|||||||
231EBB2E2B32F0C7006F782E /* MewMainHomePartyHeadItemView.m */,
|
231EBB2E2B32F0C7006F782E /* MewMainHomePartyHeadItemView.m */,
|
||||||
231EBB302B32F68E006F782E /* MewMainHomePartyHeadHotView.h */,
|
231EBB302B32F68E006F782E /* MewMainHomePartyHeadHotView.h */,
|
||||||
231EBB312B32F68E006F782E /* MewMainHomePartyHeadHotView.m */,
|
231EBB312B32F68E006F782E /* MewMainHomePartyHeadHotView.m */,
|
||||||
|
231EBB522B352ADE006F782E /* MewMainHomeMakeFriendHeadView.h */,
|
||||||
|
231EBB532B352ADE006F782E /* MewMainHomeMakeFriendHeadView.m */,
|
||||||
|
23844FAB2B39274F002AD661 /* MewMainHomeMoreGameHeadView.h */,
|
||||||
|
23844FAC2B39274F002AD661 /* MewMainHomeMoreGameHeadView.m */,
|
||||||
);
|
);
|
||||||
path = MewHomeSubViews;
|
path = MewHomeSubViews;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -4859,6 +4911,16 @@
|
|||||||
231EBB372B33D825006F782E /* MewMainHomePartyCell.m */,
|
231EBB372B33D825006F782E /* MewMainHomePartyCell.m */,
|
||||||
231EBB492B34112C006F782E /* MewMainHomePartyHeadHotCell.h */,
|
231EBB492B34112C006F782E /* MewMainHomePartyHeadHotCell.h */,
|
||||||
231EBB4A2B34112C006F782E /* MewMainHomePartyHeadHotCell.m */,
|
231EBB4A2B34112C006F782E /* MewMainHomePartyHeadHotCell.m */,
|
||||||
|
231EBB552B3532E4006F782E /* MewMainHomeMakeFriendHeadCell.h */,
|
||||||
|
231EBB562B3532E4006F782E /* MewMainHomeMakeFriendHeadCell.m */,
|
||||||
|
231EBB582B355D9D006F782E /* MewMainHomeMakeFriendCell.h */,
|
||||||
|
231EBB592B355D9D006F782E /* MewMainHomeMakeFriendCell.m */,
|
||||||
|
23844FBF2B3A6DAA002AD661 /* MewMainHomeMakeFriendEmptyCell.h */,
|
||||||
|
23844FC02B3A6DAA002AD661 /* MewMainHomeMakeFriendEmptyCell.m */,
|
||||||
|
23844FAE2B3927B3002AD661 /* MewMainHomeMoreGameHeadCell.h */,
|
||||||
|
23844FAF2B3927B3002AD661 /* MewMainHomeMoreGameHeadCell.m */,
|
||||||
|
23844FB12B392A7B002AD661 /* MewMainHomeMoreGameCell.h */,
|
||||||
|
23844FB22B392A7B002AD661 /* MewMainHomeMoreGameCell.m */,
|
||||||
);
|
);
|
||||||
path = MewHomeCell;
|
path = MewHomeCell;
|
||||||
sourceTree = "<group>";
|
sourceTree = "<group>";
|
||||||
@@ -8241,6 +8303,7 @@
|
|||||||
E8A1E45C276220B100B294CA /* Sources */ = {
|
E8A1E45C276220B100B294CA /* Sources */ = {
|
||||||
isa = PBXGroup;
|
isa = PBXGroup;
|
||||||
children = (
|
children = (
|
||||||
|
23844FB72B397C4A002AD661 /* kMewMainHomePlayVoice.svga */,
|
||||||
E8B2B5C029C9C95F00C7AD19 /* room_wish_gift_sendCelebrate.svga */,
|
E8B2B5C029C9C95F00C7AD19 /* room_wish_gift_sendCelebrate.svga */,
|
||||||
1497CCE229C1E1FB0015D135 /* sailing_prize_cowry.svga */,
|
1497CCE229C1E1FB0015D135 /* sailing_prize_cowry.svga */,
|
||||||
1497CCE329C1E1FB0015D135 /* sailing_prize.svga */,
|
1497CCE329C1E1FB0015D135 /* sailing_prize.svga */,
|
||||||
@@ -10108,6 +10171,7 @@
|
|||||||
E80EC86D28ACD84000D133C5 /* emoji_35@2x.png in Resources */,
|
E80EC86D28ACD84000D133C5 /* emoji_35@2x.png in Resources */,
|
||||||
1497CCE529C1E1FB0015D135 /* sailing_prize.svga in Resources */,
|
1497CCE529C1E1FB0015D135 /* sailing_prize.svga in Resources */,
|
||||||
E80EC86528ACD84000D133C5 /* emoji_03@2x.png in Resources */,
|
E80EC86528ACD84000D133C5 /* emoji_03@2x.png in Resources */,
|
||||||
|
23844FB82B397C4A002AD661 /* kMewMainHomePlayVoice.svga in Resources */,
|
||||||
E80EC85B28ACD84000D133C5 /* emoji_69@2x.png in Resources */,
|
E80EC85B28ACD84000D133C5 /* emoji_69@2x.png in Resources */,
|
||||||
E80EC8A128ACD84100D133C5 /* emoji_74@2x.png in Resources */,
|
E80EC8A128ACD84100D133C5 /* emoji_74@2x.png in Resources */,
|
||||||
E80EC8AF28ACD84100D133C5 /* emoj_s_pressed@2x.png in Resources */,
|
E80EC8AF28ACD84100D133C5 /* emoj_s_pressed@2x.png in Resources */,
|
||||||
@@ -10500,6 +10564,7 @@
|
|||||||
E8C1670928067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.m in Sources */,
|
E8C1670928067DAA00ECB15C /* XPMineGuildSuperAdminSetViewController.m in Sources */,
|
||||||
E8E859DA28264C2300EE4857 /* SJXCSMIPHelper.m in Sources */,
|
E8E859DA28264C2300EE4857 /* SJXCSMIPHelper.m in Sources */,
|
||||||
E890BC04273CF0500007C46B /* XPGiftCountModel.m in Sources */,
|
E890BC04273CF0500007C46B /* XPGiftCountModel.m in Sources */,
|
||||||
|
23844FB62B3932D9002AD661 /* MewMainHomeMakeFriendModel.m in Sources */,
|
||||||
E855516A280599A7005F293F /* XPGuildEmptyCollectionViewCell.m in Sources */,
|
E855516A280599A7005F293F /* XPGuildEmptyCollectionViewCell.m in Sources */,
|
||||||
E899C68C275093B800E189E5 /* XPUserCardMicroItemModel.m in Sources */,
|
E899C68C275093B800E189E5 /* XPUserCardMicroItemModel.m in Sources */,
|
||||||
9B6E8573281AB9B20041A321 /* XPRoomInsideRecommendCell.m in Sources */,
|
9B6E8573281AB9B20041A321 /* XPRoomInsideRecommendCell.m in Sources */,
|
||||||
@@ -10511,9 +10576,11 @@
|
|||||||
E80EC80B28ACD84000D133C5 /* QInputBarViewConfiguration.m in Sources */,
|
E80EC80B28ACD84000D133C5 /* QInputBarViewConfiguration.m in Sources */,
|
||||||
231EBB2C2B32EFE3006F782E /* MewMainHomePartyHeadView.m in Sources */,
|
231EBB2C2B32EFE3006F782E /* MewMainHomePartyHeadView.m in Sources */,
|
||||||
E880B39E278BD49E00A83B0D /* XPAcrossRoomPKViewController.m in Sources */,
|
E880B39E278BD49E00A83B0D /* XPAcrossRoomPKViewController.m in Sources */,
|
||||||
|
23844FC12B3A6DAA002AD661 /* MewMainHomeMakeFriendEmptyCell.m in Sources */,
|
||||||
E8AC723D26F4B6AA007D6E91 /* XPLoginBindPhoneResultViewController.m in Sources */,
|
E8AC723D26F4B6AA007D6E91 /* XPLoginBindPhoneResultViewController.m in Sources */,
|
||||||
E800806527FD37A20055A8AB /* XPGuildHeaderView.m in Sources */,
|
E800806527FD37A20055A8AB /* XPGuildHeaderView.m in Sources */,
|
||||||
9B2A12D52783EEC700CED41B /* XPNobleCenterTableHeadView.m in Sources */,
|
9B2A12D52783EEC700CED41B /* XPNobleCenterTableHeadView.m in Sources */,
|
||||||
|
23844FA72B3926A2002AD661 /* MewMainHomeMoreGameVC.m in Sources */,
|
||||||
E8AB632728AE13210023B0D2 /* XPMonentsTopicListPresenter.m in Sources */,
|
E8AB632728AE13210023B0D2 /* XPMonentsTopicListPresenter.m in Sources */,
|
||||||
9BEE3D11278584FE00C83219 /* XPNobleCenterEmptyView.m in Sources */,
|
9BEE3D11278584FE00C83219 /* XPNobleCenterEmptyView.m in Sources */,
|
||||||
E8D55C9D28113218006935A5 /* MessageMenuModel.m in Sources */,
|
E8D55C9D28113218006935A5 /* MessageMenuModel.m in Sources */,
|
||||||
@@ -10546,6 +10613,7 @@
|
|||||||
E821513429C2C6DE0030D7D4 /* XPRoomMessageFilter.m in Sources */,
|
E821513429C2C6DE0030D7D4 /* XPRoomMessageFilter.m in Sources */,
|
||||||
E8252FEE27687DF1002B3164 /* ActivityInfoModel.m in Sources */,
|
E8252FEE27687DF1002B3164 /* ActivityInfoModel.m in Sources */,
|
||||||
E84BF7D1277BFCDD00EF8877 /* RoomTagModel.m in Sources */,
|
E84BF7D1277BFCDD00EF8877 /* RoomTagModel.m in Sources */,
|
||||||
|
231EBB5A2B355D9D006F782E /* MewMainHomeMakeFriendCell.m in Sources */,
|
||||||
E8AC723526F49939007D6E91 /* XPMineNotificaPresenter.m in Sources */,
|
E8AC723526F49939007D6E91 /* XPMineNotificaPresenter.m in Sources */,
|
||||||
E8A86E0727BA38DB001C21F9 /* NSData+RW.m in Sources */,
|
E8A86E0727BA38DB001C21F9 /* NSData+RW.m in Sources */,
|
||||||
E80DE40A277568D300BE5BCB /* ThemeColor+FirstRecharge.m in Sources */,
|
E80DE40A277568D300BE5BCB /* ThemeColor+FirstRecharge.m in Sources */,
|
||||||
@@ -10563,6 +10631,7 @@
|
|||||||
189DD53426DE255300AB55B1 /* TabbarViewController.m in Sources */,
|
189DD53426DE255300AB55B1 /* TabbarViewController.m in Sources */,
|
||||||
E81EF6E4279AB92E00FF3EDE /* LittleGameInfoModel.m in Sources */,
|
E81EF6E4279AB92E00FF3EDE /* LittleGameInfoModel.m in Sources */,
|
||||||
9BA3B40B293DCDFD0071DF1C /* XPVersionUpdateModel.m in Sources */,
|
9BA3B40B293DCDFD0071DF1C /* XPVersionUpdateModel.m in Sources */,
|
||||||
|
23844FB02B3927B3002AD661 /* MewMainHomeMoreGameHeadCell.m in Sources */,
|
||||||
E87A26F927587C62002DDC7A /* XPHomeContainerPresenter.m in Sources */,
|
E87A26F927587C62002DDC7A /* XPHomeContainerPresenter.m in Sources */,
|
||||||
9B88E21228C6365B00D26FBA /* XPHomeSearchRecordCell.m in Sources */,
|
9B88E21228C6365B00D26FBA /* XPHomeSearchRecordCell.m in Sources */,
|
||||||
18EE401A2754BA9F00A452BF /* NIMMessageMaker.m in Sources */,
|
18EE401A2754BA9F00A452BF /* NIMMessageMaker.m in Sources */,
|
||||||
@@ -10678,6 +10747,7 @@
|
|||||||
9BCB99A028F571B500466D64 /* XPMineCollectPartyRoomViewController.m in Sources */,
|
9BCB99A028F571B500466D64 /* XPMineCollectPartyRoomViewController.m in Sources */,
|
||||||
E81C27AE26EF39AB0031E639 /* AppDelegate+ThirdConfig.m in Sources */,
|
E81C27AE26EF39AB0031E639 /* AppDelegate+ThirdConfig.m in Sources */,
|
||||||
E8AB631028ADD92D0023B0D2 /* XPMonentsTopicRecommondViewController.m in Sources */,
|
E8AB631028ADD92D0023B0D2 /* XPMonentsTopicRecommondViewController.m in Sources */,
|
||||||
|
23844FBB2B39892B002AD661 /* MewMainHomeLittleGameInfoModel.m in Sources */,
|
||||||
231EBB172B3298B8006F782E /* MewMainHomeViewController.m in Sources */,
|
231EBB172B3298B8006F782E /* MewMainHomeViewController.m in Sources */,
|
||||||
E877A7F127842B2F00EFACED /* XPRoomDatingWebAlertView.m in Sources */,
|
E877A7F127842B2F00EFACED /* XPRoomDatingWebAlertView.m in Sources */,
|
||||||
E80016382804140D00D6D17A /* XPMineGuildIncomeStatisViewController.m in Sources */,
|
E80016382804140D00D6D17A /* XPMineGuildIncomeStatisViewController.m in Sources */,
|
||||||
@@ -10734,6 +10804,7 @@
|
|||||||
9B1B72AF280031F8003FACE9 /* XPAnchorPKSelectRoomView.m in Sources */,
|
9B1B72AF280031F8003FACE9 /* XPAnchorPKSelectRoomView.m in Sources */,
|
||||||
E8D4824A278D1F73003C1D08 /* XPAcrossRoomPKInviteView.m in Sources */,
|
E8D4824A278D1F73003C1D08 /* XPAcrossRoomPKInviteView.m in Sources */,
|
||||||
189DD73F26E21C3F00AB55B1 /* YYUtility+Carrier.m in Sources */,
|
189DD73F26E21C3F00AB55B1 /* YYUtility+Carrier.m in Sources */,
|
||||||
|
23844FBE2B398F18002AD661 /* MewMainHomeMoreGameModel.m in Sources */,
|
||||||
E83A2A55282F5C50002AD58F /* XPEnterpriseRechargeFootView.m in Sources */,
|
E83A2A55282F5C50002AD58F /* XPEnterpriseRechargeFootView.m in Sources */,
|
||||||
E87AE7F9277AABE50037823A /* XPRoomTagListViewController.m in Sources */,
|
E87AE7F9277AABE50037823A /* XPRoomTagListViewController.m in Sources */,
|
||||||
18E7B26926E8D5D60064BC9B /* XCCurrentVCStackManager.m in Sources */,
|
18E7B26926E8D5D60064BC9B /* XCCurrentVCStackManager.m in Sources */,
|
||||||
@@ -10871,6 +10942,7 @@
|
|||||||
E8DBB70127B6501200AA285D /* XPLittleGameMiniStageView.m in Sources */,
|
E8DBB70127B6501200AA285D /* XPLittleGameMiniStageView.m in Sources */,
|
||||||
E851E46227FF1314002F3ACB /* XPMineGuildEmptyTableViewCell.m in Sources */,
|
E851E46227FF1314002F3ACB /* XPMineGuildEmptyTableViewCell.m in Sources */,
|
||||||
E8DD25DA295583920043C7D5 /* XPAnchorRandomPKRuleView.m in Sources */,
|
E8DD25DA295583920043C7D5 /* XPAnchorRandomPKRuleView.m in Sources */,
|
||||||
|
23844FB32B392A7B002AD661 /* MewMainHomeMoreGameCell.m in Sources */,
|
||||||
E83A2A52282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.m in Sources */,
|
E83A2A52282F5BBA002AD58F /* XPEnterpriseChargeListCollectionViewCell.m in Sources */,
|
||||||
E8834E3B280012B60029CCC1 /* XPMineGuildRemoveMemberViewController.m in Sources */,
|
E8834E3B280012B60029CCC1 /* XPMineGuildRemoveMemberViewController.m in Sources */,
|
||||||
9B734F79288A9C4B00CBDAA9 /* XPMineGameTableViewCell.m in Sources */,
|
9B734F79288A9C4B00CBDAA9 /* XPMineGameTableViewCell.m in Sources */,
|
||||||
@@ -11044,6 +11116,7 @@
|
|||||||
9B208A362779B50100F9E54A /* GiftNobleInfoModel.m in Sources */,
|
9B208A362779B50100F9E54A /* GiftNobleInfoModel.m in Sources */,
|
||||||
230497282A712623006D1F0C /* XPRoomSettingBackImageItemModel.m in Sources */,
|
230497282A712623006D1F0C /* XPRoomSettingBackImageItemModel.m in Sources */,
|
||||||
E8C6FFDA2754BE81004DC9F0 /* ThemeColor+Home.m in Sources */,
|
E8C6FFDA2754BE81004DC9F0 /* ThemeColor+Home.m in Sources */,
|
||||||
|
231EBB5D2B358C4C006F782E /* MewMainHomeGameTabModel.m in Sources */,
|
||||||
E80A086227F2AC190027B30C /* RoomPKDetailInfoModel.m in Sources */,
|
E80A086227F2AC190027B30C /* RoomPKDetailInfoModel.m in Sources */,
|
||||||
E824545126F5CE6E00BE8163 /* XPMineModifPayPwdPresenter.m in Sources */,
|
E824545126F5CE6E00BE8163 /* XPMineModifPayPwdPresenter.m in Sources */,
|
||||||
E8C21A00294854DA00344FC5 /* AnchorLevelModel.m in Sources */,
|
E8C21A00294854DA00344FC5 /* AnchorLevelModel.m in Sources */,
|
||||||
@@ -11118,6 +11191,7 @@
|
|||||||
E818E348286ECA4B005EDF68 /* XPMonentsPublishViewController.m in Sources */,
|
E818E348286ECA4B005EDF68 /* XPMonentsPublishViewController.m in Sources */,
|
||||||
9B88E20C28C5EB8300D26FBA /* MessageContentRedPacketView.m in Sources */,
|
9B88E20C28C5EB8300D26FBA /* MessageContentRedPacketView.m in Sources */,
|
||||||
E800806827FD3B520055A8AB /* XPClanMenuView.m in Sources */,
|
E800806827FD3B520055A8AB /* XPClanMenuView.m in Sources */,
|
||||||
|
23844FAD2B39274F002AD661 /* MewMainHomeMoreGameHeadView.m in Sources */,
|
||||||
E896EFAF2771AF0F00AD2CC1 /* XPMineFriendEmptyTableViewCell.m in Sources */,
|
E896EFAF2771AF0F00AD2CC1 /* XPMineFriendEmptyTableViewCell.m in Sources */,
|
||||||
E8E859E928264F4500EE4857 /* XPRoomTransferMusicViewController.m in Sources */,
|
E8E859E928264F4500EE4857 /* XPRoomTransferMusicViewController.m in Sources */,
|
||||||
18486213271EA9DA005FC5DC /* RtcManager.m in Sources */,
|
18486213271EA9DA005FC5DC /* RtcManager.m in Sources */,
|
||||||
@@ -11171,12 +11245,14 @@
|
|||||||
E880B3B5278C1FE400A83B0D /* XPAcrossRoomPKPresenter.m in Sources */,
|
E880B3B5278C1FE400A83B0D /* XPAcrossRoomPKPresenter.m in Sources */,
|
||||||
186A534626FC6ED900D67B2C /* TTPopup.m in Sources */,
|
186A534626FC6ED900D67B2C /* TTPopup.m in Sources */,
|
||||||
E81EF6E0279AB7D900FF3EDE /* XPCreateLittleGameCollectionViewCell.m in Sources */,
|
E81EF6E0279AB7D900FF3EDE /* XPCreateLittleGameCollectionViewCell.m in Sources */,
|
||||||
|
231EBB542B352ADE006F782E /* MewMainHomeMakeFriendHeadView.m in Sources */,
|
||||||
E8C167302806C01500ECB15C /* GuildSuperAdminInfoModel.m in Sources */,
|
E8C167302806C01500ECB15C /* GuildSuperAdminInfoModel.m in Sources */,
|
||||||
9B4D449328F15765002572D5 /* XPGiftLuckyGiftBroadcastView.m in Sources */,
|
9B4D449328F15765002572D5 /* XPGiftLuckyGiftBroadcastView.m in Sources */,
|
||||||
E81C278C26EAFAF60031E639 /* Base64.m in Sources */,
|
E81C278C26EAFAF60031E639 /* Base64.m in Sources */,
|
||||||
E8C1CD7027D894B800376F83 /* RoomFaceTitleItemModel.m in Sources */,
|
E8C1CD7027D894B800376F83 /* RoomFaceTitleItemModel.m in Sources */,
|
||||||
189DD73D26E21C3F00AB55B1 /* YYUtility+Device.m in Sources */,
|
189DD73D26E21C3F00AB55B1 /* YYUtility+Device.m in Sources */,
|
||||||
187EEEDC26E89B32002833B2 /* BaseModel.m in Sources */,
|
187EEEDC26E89B32002833B2 /* BaseModel.m in Sources */,
|
||||||
|
231EBB572B3532E4006F782E /* MewMainHomeMakeFriendHeadCell.m in Sources */,
|
||||||
145C965229C30308009883AB /* XPRoomAnnouncementView.m in Sources */,
|
145C965229C30308009883AB /* XPRoomAnnouncementView.m in Sources */,
|
||||||
E878B85E283640A500E22DCF /* MonentsUnReadModel.m in Sources */,
|
E878B85E283640A500E22DCF /* MonentsUnReadModel.m in Sources */,
|
||||||
E81366FC26F0D2980076364C /* UIButton+EnlargeTouchArea.m in Sources */,
|
E81366FC26F0D2980076364C /* UIButton+EnlargeTouchArea.m in Sources */,
|
||||||
|
Before Width: | Height: | Size: 3.7 KiB After Width: | Height: | Size: 3.4 KiB |
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_mainHome_more_game_back.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_mainHome_more_game_back@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_mainHome_more_game_back@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 236 B |
After Width: | Height: | Size: 339 B |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_cell_no_play.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_no_play@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_no_play@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 375 B |
After Width: | Height: | Size: 617 B |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_cell_play.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_play@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_play@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 348 B |
After Width: | Height: | Size: 519 B |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_cell_play_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_play_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_play_bg@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 658 B |
After Width: | Height: | Size: 1.1 KiB |
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_play_icom_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_play_icom_bg@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 620 B |
After Width: | Height: | Size: 969 B |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_cell_player.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_player@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_player@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 2.5 KiB |
After Width: | Height: | Size: 4.1 KiB |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_cell_room.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_room@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_room@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 417 B |
After Width: | Height: | Size: 624 B |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_cell_room_bg.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_room_bg@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_cell_room_bg@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 907 B |
After Width: | Height: | Size: 1.6 KiB |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_empty_icon.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_empty_icon@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_empty_icon@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 30 KiB |
After Width: | Height: | Size: 67 KiB |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_head_change.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_head_change@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_head_change@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 406 B |
After Width: | Height: | Size: 616 B |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_head_matching.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_head_matching@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_head_matching@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 12 KiB |
After Width: | Height: | Size: 26 KiB |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_friend_head_selecte.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_head_selecte@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_friend_head_selecte@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 184 B |
After Width: | Height: | Size: 254 B |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_more_game_add.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_more_game_add@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_more_game_add@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 421 B |
After Width: | Height: | Size: 773 B |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_more_game_friend.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_more_game_friend@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_more_game_friend@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 5.9 KiB |
After Width: | Height: | Size: 10 KiB |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_more_game_hot.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_more_game_hot@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_more_game_hot@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 815 B |
After Width: | Height: | Size: 1.2 KiB |
22
xplan-ios/Assets.xcassets/Mew/MewHome/mew_main_home_more_game_mic.imageset/Contents.json
vendored
Normal file
@@ -0,0 +1,22 @@
|
|||||||
|
{
|
||||||
|
"images" : [
|
||||||
|
{
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "1x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_more_game_mic@2x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "2x"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"filename" : "mew_main_home_more_game_mic@3x.png",
|
||||||
|
"idiom" : "universal",
|
||||||
|
"scale" : "3x"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"info" : {
|
||||||
|
"author" : "xcode",
|
||||||
|
"version" : 1
|
||||||
|
}
|
||||||
|
}
|
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 2.4 KiB |
@@ -45,4 +45,5 @@ if (@available(iOS 11.0, *)) {\
|
|||||||
#import "NSString+Utils.h"
|
#import "NSString+Utils.h"
|
||||||
#import "YYUtility.h"
|
#import "YYUtility.h"
|
||||||
#import "XPHtmlUrl.h"
|
#import "XPHtmlUrl.h"
|
||||||
|
#import "XPEnum.h"
|
||||||
#endif /* Base_pch */
|
#endif /* Base_pch */
|
||||||
|
@@ -91,7 +91,8 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
@property (nonatomic, copy) NSString * inRoomUid;
|
@property (nonatomic, copy) NSString * inRoomUid;
|
||||||
/// 是否在麦位,用在发现新朋友
|
/// 是否在麦位,用在发现新朋友
|
||||||
@property (nonatomic, assign) BOOL inMic;
|
@property (nonatomic, assign) BOOL inMic;
|
||||||
|
/// 是否空闲,用在发现新朋友
|
||||||
|
@property(nonatomic,assign) BOOL inOnline;
|
||||||
#pragma mark - 相亲房的字段
|
#pragma mark - 相亲房的字段
|
||||||
///是否为相亲模式VIP坑位
|
///是否为相亲模式VIP坑位
|
||||||
@property (nonatomic,assign) BOOL vipMic;
|
@property (nonatomic,assign) BOOL vipMic;
|
||||||
|
@@ -22,7 +22,7 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
token:(NSString *)token
|
token:(NSString *)token
|
||||||
success:(void (^)(NSString *key, NSDictionary *resp))success
|
success:(void (^)(NSString *key, NSDictionary *resp))success
|
||||||
failure:(void (^)(NSNumber *resCode, NSString *message))failure;
|
failure:(void (^)(NSNumber *resCode, NSString *message))failure;
|
||||||
|
+ (void)mew_downloadAudioWithFileName:(NSString *)fileName musicUrl:(NSString *)musicUrl mainFileName:(NSString *)mainFileName completion:(void (^) (BOOL isSuccess, NSString *editAudioPath))completion;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -7,7 +7,7 @@
|
|||||||
|
|
||||||
#import "UploadFile.h"
|
#import "UploadFile.h"
|
||||||
#import <Qiniu/QiniuSDK.h>
|
#import <Qiniu/QiniuSDK.h>
|
||||||
|
#import <AFNetworking.h>
|
||||||
@implementation UploadFile
|
@implementation UploadFile
|
||||||
|
|
||||||
/// 上传一个文件
|
/// 上传一个文件
|
||||||
@@ -33,5 +33,20 @@
|
|||||||
}
|
}
|
||||||
} option:nil];
|
} option:nil];
|
||||||
}
|
}
|
||||||
|
+ (void)mew_downloadAudioWithFileName:(NSString *)fileName musicUrl:(NSString *)musicUrl mainFileName:(NSString *)mainFileName completion:(void (^) (BOOL isSuccess, NSString *editAudioPath))completion{
|
||||||
|
AFHTTPSessionManager *manager = [AFHTTPSessionManager manager];
|
||||||
|
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:musicUrl]];
|
||||||
|
NSURLSessionDownloadTask *download = [manager downloadTaskWithRequest:request progress:^(NSProgress * _Nonnull downloadProgress) {
|
||||||
|
} destination:^NSURL * _Nonnull(NSURL * _Nonnull targetPath, NSURLResponse * _Nonnull response) {
|
||||||
|
NSString *filePath = [[[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) safeObjectAtIndex1:0] stringByAppendingPathComponent:mainFileName] stringByAppendingPathComponent:fileName];
|
||||||
|
return [NSURL fileURLWithPath:filePath];
|
||||||
|
} completionHandler:^(NSURLResponse * _Nonnull response, NSURL * _Nullable filePath, NSError * _Nullable error) {
|
||||||
|
if (!error) {
|
||||||
|
completion(YES, filePath.path);
|
||||||
|
} else {
|
||||||
|
completion(NO, nil);
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
[download resume];
|
||||||
|
}
|
||||||
@end
|
@end
|
||||||
|
@@ -28,6 +28,10 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
|
|
||||||
+(NSString *)getCharmImageUrl:(NSString *)url;
|
+(NSString *)getCharmImageUrl:(NSString *)url;
|
||||||
+(NSString *)getWealthImageUrl:(NSString *)url;
|
+(NSString *)getWealthImageUrl:(NSString *)url;
|
||||||
|
+(NSInteger) getMonth:(long )time;
|
||||||
|
+ (NSInteger) getDay:(long) time;
|
||||||
|
+ (NSString *)calculateConstellationWithMonth:(long)time;
|
||||||
|
+ (NSString *)calculateAge:(long)time;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -175,4 +175,76 @@
|
|||||||
}
|
}
|
||||||
return getUrl;
|
return getUrl;
|
||||||
}
|
}
|
||||||
|
#pragma mark - 计算星座
|
||||||
|
+(NSInteger) getMonth:(long )time
|
||||||
|
{
|
||||||
|
NSDate *date = [NSDate dateWithTimeIntervalSince1970:time/1000];
|
||||||
|
NSCalendar* calendar = [NSCalendar currentCalendar];
|
||||||
|
NSDateComponents* components = [calendar components:NSCalendarUnitMonth fromDate:date];
|
||||||
|
NSInteger month = components.month;
|
||||||
|
return month;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ (NSInteger) getDay:(long) time
|
||||||
|
{
|
||||||
|
NSDate *date = [NSDate dateWithTimeIntervalSince1970:time/1000];
|
||||||
|
NSCalendar* calendar = [NSCalendar currentCalendar];
|
||||||
|
NSDateComponents* components = [calendar components:NSCalendarUnitDay fromDate:date];
|
||||||
|
NSInteger day = components.day;
|
||||||
|
return day;
|
||||||
|
}
|
||||||
|
|
||||||
|
+ (NSString *)calculateConstellationWithMonth:(long)time
|
||||||
|
{
|
||||||
|
NSString *astroString = @"魔羯水瓶双鱼白羊金牛双子巨蟹狮子处女天秤天蝎射手魔羯";
|
||||||
|
NSString *astroFormat = @"102123444543";
|
||||||
|
NSString *result;
|
||||||
|
|
||||||
|
NSInteger month = [self getMonth:time];
|
||||||
|
NSInteger day = [self getDay:time];
|
||||||
|
|
||||||
|
if (month<1 || month>12 || day<1 || day>31){
|
||||||
|
return @"错误日期格式!";
|
||||||
|
}
|
||||||
|
|
||||||
|
if(month==2 && day>29)
|
||||||
|
{
|
||||||
|
return @"错误日期格式!!";
|
||||||
|
}else if(month==4 || month==6 || month==9 || month==11) {
|
||||||
|
if (day>30) {
|
||||||
|
return @"错误日期格式!!!";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
result=[NSString stringWithFormat:@"%@",[astroString substringWithRange:NSMakeRange(month*2-(day < [[astroFormat substringWithRange:NSMakeRange((month-1), 1)] intValue] - (-19))*2,2)]];
|
||||||
|
|
||||||
|
return [NSString stringWithFormat:@"%@座",result];
|
||||||
|
}
|
||||||
|
|
||||||
|
+ (NSString *)calculateAge:(long)time {
|
||||||
|
NSDate *date = [NSDate dateWithTimeIntervalSince1970:time/1000];
|
||||||
|
NSCalendar *birthCalendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierISO8601];
|
||||||
|
NSDateComponents *birthCompomemts = [birthCalendar components:NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitWeekday | NSCalendarUnitDay fromDate:date];
|
||||||
|
NSInteger year = birthCompomemts.year;
|
||||||
|
NSInteger month = birthCompomemts.month;
|
||||||
|
NSInteger day = birthCompomemts.day;
|
||||||
|
NSLog(@"出生于%ld年%ld月%ld日", year, month, day);
|
||||||
|
|
||||||
|
NSDate *nowDate = [NSDate date];
|
||||||
|
NSCalendar *calendar = [[NSCalendar alloc] initWithCalendarIdentifier:NSCalendarIdentifierISO8601];
|
||||||
|
NSDateComponents *compomemts = [calendar components:NSCalendarUnitYear | NSCalendarUnitMonth | NSCalendarUnitWeekday | NSCalendarUnitDay fromDate:nowDate];
|
||||||
|
NSInteger nowYear = compomemts.year;
|
||||||
|
NSInteger nowMonth = compomemts.month;
|
||||||
|
NSInteger nowDay = compomemts.day;
|
||||||
|
NSLog(@"今天是%ld年%ld月%ld日", nowYear, nowMonth, nowDay);
|
||||||
|
|
||||||
|
// 计算年龄
|
||||||
|
NSInteger userAge = nowYear - year - 1;
|
||||||
|
if ((nowMonth > month) || (nowMonth == month && nowDay >= day)) {
|
||||||
|
userAge++;
|
||||||
|
}
|
||||||
|
NSLog(@"用户年龄是%ld",userAge);
|
||||||
|
return [NSString stringWithFormat:@"%ld", userAge];
|
||||||
|
}
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
@@ -29,7 +29,25 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
/// @param completion 完成
|
/// @param completion 完成
|
||||||
/// @param uid 用户的uid
|
/// @param uid 用户的uid
|
||||||
/// @param rid 进入的类型的id
|
/// @param rid 进入的类型的id
|
||||||
+ (void)mew_RequestMainHomePickResource:(HttpRequestHelperCompletion)completion uid:(NSString *)uid rid:(NSString *)rid;
|
+ (void)mew_RequestMainHomePickResource:(HttpRequestHelperCompletion)completion uid:(NSString *)uid rid:(NSString *)rid type:(NSString *)type;
|
||||||
|
/// 发现新朋友列表
|
||||||
|
/// @param complection 完成
|
||||||
|
/// @param gender 性别. 1:男性 2:女性 null:不限定
|
||||||
|
+ (void)mew_RequestMainHomeNewFriendListcomplection:(HttpRequestHelperCompletion)complection gender:(NSString *)gender gameId:(NSString *)gameId;
|
||||||
|
///首页游戏点单分类
|
||||||
|
+(void)mew_RequestMainHomeGameTabList:(HttpRequestHelperCompletion)complection;
|
||||||
|
///,大神带飞
|
||||||
|
+(void)mew_RequsetMainHomeFriendMahogany:(HttpRequestHelperCompletion)complection;
|
||||||
|
/// 一键匹配
|
||||||
|
/// @param completion 完成
|
||||||
|
+ (void)mew_RequsetMainHomeFriendChatPick:(HttpRequestHelperCompletion)completion;
|
||||||
|
/// 获取小游戏列表
|
||||||
|
/// @param completion 完成
|
||||||
|
+ (void)mew_RequsetMainHomeLittleGameList:(HttpRequestHelperCompletion)completion;
|
||||||
|
///获取游戏列表用户
|
||||||
|
+(void)mew_RequsetMainHomeGameFriend:(HttpRequestHelperCompletion)completion;
|
||||||
|
///大神推荐
|
||||||
|
+(void)mew_RequestMainHomeFriendMahogany:(HttpRequestHelperCompletion)completion;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -35,10 +35,44 @@
|
|||||||
/// @param completion 完成
|
/// @param completion 完成
|
||||||
/// @param uid 用户的uid
|
/// @param uid 用户的uid
|
||||||
/// @param rid 进入的类型的id
|
/// @param rid 进入的类型的id
|
||||||
+ (void)mew_RequestMainHomePickResource:(HttpRequestHelperCompletion)completion uid:(NSString *)uid rid:(NSString *)rid {
|
+ (void)mew_RequestMainHomePickResource:(HttpRequestHelperCompletion)completion uid:(NSString *)uid rid:(NSString *)rid type:(NSString *)type{
|
||||||
NSMutableDictionary * pararms = [NSMutableDictionary dictionary];
|
NSMutableDictionary * pararms = [NSMutableDictionary dictionary];
|
||||||
[pararms safeSetObject:uid forKey:@"uid"];
|
[pararms safeSetObject:uid forKey:@"uid"];
|
||||||
[pararms safeSetObject:rid forKey:@"id"];
|
[pararms safeSetObject:rid forKey:@"id"];
|
||||||
|
[pararms safeSetObject:type forKey:@"type"];
|
||||||
[HttpRequestHelper request:@"home/pickResource" method:HttpRequestHelperMethodGET params:pararms completion:completion];
|
[HttpRequestHelper request:@"home/pickResource" method:HttpRequestHelperMethodGET params:pararms completion:completion];
|
||||||
}
|
}
|
||||||
|
/// 发现新朋友列表
|
||||||
|
/// @param complection 完成
|
||||||
|
/// @param gender 性别. 1:男性 2:女性 null:不限定
|
||||||
|
+ (void)mew_RequestMainHomeNewFriendListcomplection:(HttpRequestHelperCompletion)complection gender:(NSString *)gender gameId:(NSString *)gameId{
|
||||||
|
[self makeRequest:@"home/newFriend" method:HttpRequestHelperMethodGET completion:complection, __FUNCTION__, gender,gameId, nil];
|
||||||
|
}
|
||||||
|
///首页游戏点单分类
|
||||||
|
+(void)mew_RequestMainHomeGameTabList:(HttpRequestHelperCompletion)complection{
|
||||||
|
[self makeRequest:@"home/game/tab/list" method:HttpRequestHelperMethodGET completion:complection, __FUNCTION__, nil];
|
||||||
|
}
|
||||||
|
///,大神带飞
|
||||||
|
+(void)mew_RequsetMainHomeFriendMahogany:(HttpRequestHelperCompletion)complection{
|
||||||
|
[self makeRequest:@"home/mahogany" method:HttpRequestHelperMethodGET completion:complection, __FUNCTION__, nil];
|
||||||
|
}
|
||||||
|
/// 一键匹配
|
||||||
|
/// @param completion 完成
|
||||||
|
+ (void)mew_RequsetMainHomeFriendChatPick:(HttpRequestHelperCompletion)completion {
|
||||||
|
[self makeRequest:@"home/chat/pick" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, nil];
|
||||||
|
}
|
||||||
|
/// 获取小游戏列表
|
||||||
|
/// @param completion 完成
|
||||||
|
+ (void)mew_RequsetMainHomeLittleGameList:(HttpRequestHelperCompletion)completion {
|
||||||
|
[self makeRequest:@"miniGame/record/miniGameList" method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, nil];
|
||||||
|
}
|
||||||
|
///获取游戏列表用户
|
||||||
|
+(void)mew_RequsetMainHomeGameFriend:(HttpRequestHelperCompletion)completion{
|
||||||
|
[self makeRequest:@"home/game" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, nil];
|
||||||
|
}
|
||||||
|
///大神推荐
|
||||||
|
+(void)mew_RequestMainHomeFriendMahogany:(HttpRequestHelperCompletion)completion{
|
||||||
|
[self makeRequest:@"home/mahogany" method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, nil];
|
||||||
|
|
||||||
|
}
|
||||||
@end
|
@end
|
||||||
|
@@ -15,6 +15,18 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
- (void)mew_requestMainHomeGiftRecordList;
|
- (void)mew_requestMainHomeGiftRecordList;
|
||||||
//获取热门房间
|
//获取热门房间
|
||||||
-(void)mew_requestMainHomePersonalRoomList:(NSString *)uid;
|
-(void)mew_requestMainHomePersonalRoomList:(NSString *)uid;
|
||||||
|
/// 发现新朋友
|
||||||
|
- (void)mew_requestMainHomeNewFriendListWithGender:(nullable NSString *)gender gameId:(nullable NSString *)gameId;
|
||||||
|
/// 一键匹配
|
||||||
|
-(void)mew_getMainHomeFriendChatPickData;
|
||||||
|
//获取游戏
|
||||||
|
-(void)mew_requsetMainHomeGameTabList;
|
||||||
|
///获取小游戏列表
|
||||||
|
-(void)mew_getMainHomeLittleGameList;
|
||||||
|
///获取游戏列表用户
|
||||||
|
-(void)mew_getMainHomeGameFriendList;
|
||||||
|
///大神推荐
|
||||||
|
-(void)mew_RequestMainHomeFriendMahoganyList;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -13,6 +13,10 @@
|
|||||||
#import "MewMainHomeProtocol.h"
|
#import "MewMainHomeProtocol.h"
|
||||||
#import "MewMainHomeGiftRecordModel.h"
|
#import "MewMainHomeGiftRecordModel.h"
|
||||||
#import "MewMainHomeHotRoomModel.h"
|
#import "MewMainHomeHotRoomModel.h"
|
||||||
|
#import "MewMainHomeMakeFriendModel.h"
|
||||||
|
#import "MewMainHomeGameTabModel.h"
|
||||||
|
#import "MewMainHomeLittleGameInfoModel.h"
|
||||||
|
#import "MewMainHomeMoreGameModel.h"
|
||||||
@implementation MewHomeManager
|
@implementation MewHomeManager
|
||||||
/// 获取首页顶部的轮播图
|
/// 获取首页顶部的轮播图
|
||||||
- (void)mew_requestMainHomeTopDataList {
|
- (void)mew_requestMainHomeTopDataList {
|
||||||
@@ -42,4 +46,75 @@
|
|||||||
[[self getView]mew_getHomePersonalRoomListFail];
|
[[self getView]mew_getHomePersonalRoomListFail];
|
||||||
} showLoading:NO errorToast:NO] uid:uid];
|
} showLoading:NO errorToast:NO] uid:uid];
|
||||||
}
|
}
|
||||||
|
/// 发现新朋友
|
||||||
|
- (void)mew_requestMainHomeNewFriendListWithGender:(nullable NSString *)gender gameId:(nullable NSString *)gameId{
|
||||||
|
[Api mew_RequestMainHomeNewFriendListcomplection:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||||||
|
NSArray * array = [MewMainHomeMakeFriendModel modelsWithArray:data.data];
|
||||||
|
[[self getView] mew_getNewFriendListSuccess:array gameId:gameId];
|
||||||
|
}fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||||
|
[[self getView] mew_getNewFriendListFailWithGameId:gameId];
|
||||||
|
}] gender:gender gameId:gameId];
|
||||||
|
}
|
||||||
|
///首页游戏点单分类
|
||||||
|
-(void)mew_requsetMainHomeGameTabList{
|
||||||
|
[Api mew_RequestMainHomeGameTabList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||||||
|
NSArray *list = [MewMainHomeGameTabModel modelsWithArray:data.data];
|
||||||
|
[[self getView]mew_getMainHomeGameTabList:list];
|
||||||
|
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||||
|
|
||||||
|
}]];
|
||||||
|
}
|
||||||
|
/////,大神带飞
|
||||||
|
//-(void)mew_requsetMainHomeFriendMahoganyData{
|
||||||
|
// [Api mew_RequsetMainHomeFriendMahogany:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||||||
|
// if (data.data) {
|
||||||
|
// NSString *uid = [NSString stringWithFormat:@"%@",data.data];
|
||||||
|
// [[self getView] homeChatPickSuccess:uid];
|
||||||
|
// }else{
|
||||||
|
// [[self getView] homeChatPickFail:data.message];
|
||||||
|
// }
|
||||||
|
// } fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||||
|
//
|
||||||
|
// }]];
|
||||||
|
//}
|
||||||
|
/// 一键匹配
|
||||||
|
|
||||||
|
-(void)mew_getMainHomeFriendChatPickData{
|
||||||
|
[Api mew_RequsetMainHomeFriendChatPick:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||||||
|
if (data.data) {
|
||||||
|
NSString *uid = [NSString stringWithFormat:@"%@",data.data];
|
||||||
|
[[self getView] mew_getMainHomeFriendChatPickDataSuccess:uid];
|
||||||
|
}else{
|
||||||
|
[[self getView] mew_getMainHomeFriendChatPickDataFail:data.message];
|
||||||
|
}
|
||||||
|
}fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||||
|
[[self getView] mew_getMainHomeFriendChatPickDataFail:msg];
|
||||||
|
} showLoading:YES errorToast:YES]];
|
||||||
|
}
|
||||||
|
-(void)mew_getMainHomeLittleGameList{
|
||||||
|
[Api mew_RequsetMainHomeLittleGameList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||||||
|
NSArray *list = [MewMainHomeLittleGameInfoModel modelsWithArray:data.data];
|
||||||
|
[[self getView]mew_getMainHomeLittleGameListSuccess:list];
|
||||||
|
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||||
|
|
||||||
|
}errorToast:YES]];
|
||||||
|
}
|
||||||
|
///获取游戏列表用户
|
||||||
|
-(void)mew_getMainHomeGameFriendList{
|
||||||
|
[Api mew_RequsetMainHomeGameFriend:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||||||
|
NSArray *list = [MewMainHomeHotRoomModel modelsWithArray:data.data[@"playRooms"]];
|
||||||
|
[[self getView]mew_getMainHomeGameFriendListSuccess:list];
|
||||||
|
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||||
|
|
||||||
|
} showLoading:YES errorToast:YES]];
|
||||||
|
}
|
||||||
|
///大神推荐
|
||||||
|
-(void)mew_RequestMainHomeFriendMahoganyList{
|
||||||
|
[Api mew_RequestMainHomeFriendMahogany:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
|
||||||
|
NSArray *list = [MewMainHomeMakeFriendModel modelsWithArray:data.data];
|
||||||
|
[[self getView]mew_RequestMainHomeFriendMahoganyListSuccess:list];
|
||||||
|
} fail:^(NSInteger code, NSString * _Nullable msg) {
|
||||||
|
|
||||||
|
}]];
|
||||||
|
}
|
||||||
@end
|
@end
|
||||||
|
@@ -0,0 +1,20 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeGameTabModel.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface MewMainHomeGameTabModel : NSObject
|
||||||
|
@property(nonatomic,copy) NSString *gameId;
|
||||||
|
@property(nonatomic,copy) NSString *onClick;
|
||||||
|
@property(nonatomic,copy) NSString *onUnclick;
|
||||||
|
@property(nonatomic,assign) BOOL isOnClick;
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,12 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeGameTabModel.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeGameTabModel.h"
|
||||||
|
|
||||||
|
@implementation MewMainHomeGameTabModel
|
||||||
|
|
||||||
|
@end
|
@@ -11,6 +11,8 @@
|
|||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
@class MewMainHomeHotMicUserModel;
|
@class MewMainHomeHotMicUserModel;
|
||||||
@interface MewMainHomeHotRoomModel : NSObject
|
@interface MewMainHomeHotRoomModel : NSObject
|
||||||
|
@property(nonatomic,copy) NSString *mgId;
|
||||||
|
@property(nonatomic,assign) int state;
|
||||||
///头像
|
///头像
|
||||||
@property (nonatomic,copy) NSString *avatar;
|
@property (nonatomic,copy) NSString *avatar;
|
||||||
///在线人数
|
///在线人数
|
||||||
|
@@ -0,0 +1,23 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeLittleGameInfoModel.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface MewMainHomeLittleGameInfoModel : NSObject
|
||||||
|
///游戏ID
|
||||||
|
@property (nonatomic, copy) NSString *mgId;
|
||||||
|
///名称
|
||||||
|
@property (nonatomic, copy) NSString *name;
|
||||||
|
///封面
|
||||||
|
@property (nonatomic, copy) NSString *pic;
|
||||||
|
///是否选择
|
||||||
|
@property (nonatomic,assign) BOOL isSelect;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,12 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeLittleGameInfoModel.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeLittleGameInfoModel.h"
|
||||||
|
|
||||||
|
@implementation MewMainHomeLittleGameInfoModel
|
||||||
|
|
||||||
|
@end
|
@@ -0,0 +1,38 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendModel.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
#import "UserGameInfoVo.h"
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
@class MewMainHomeMakeFriendCardModel,UserGameInfoVo;
|
||||||
|
@interface MewMainHomeMakeFriendModel : NSObject
|
||||||
|
///头像
|
||||||
|
@property(nonatomic,copy) NSString *avatar;
|
||||||
|
///出生日期
|
||||||
|
@property (nonatomic,assign) long birth;
|
||||||
|
@property (nonatomic , assign) GenderType gender;
|
||||||
|
@property(nonatomic,assign) int inMic;
|
||||||
|
@property(nonatomic,assign) int inOnline;
|
||||||
|
@property(nonatomic,copy) NSString *inRoomUid;
|
||||||
|
@property(nonatomic,copy) NSString *nick;
|
||||||
|
@property(nonatomic,copy) NSString *roomTitle;
|
||||||
|
@property(nonatomic,copy) NSString *uid;
|
||||||
|
@property(nonatomic,strong) MewMainHomeMakeFriendCardModel *voiceCard;
|
||||||
|
@property(nonatomic,assign) int lock;
|
||||||
|
///首页点单游戏信息
|
||||||
|
@property(nonatomic,strong) UserGameInfoVo *userGamePartnerVo;
|
||||||
|
@property(nonatomic,copy) NSString *playTime;
|
||||||
|
@property(nonatomic,copy) NSString *playUrl;
|
||||||
|
@end
|
||||||
|
@interface MewMainHomeMakeFriendCardModel : NSObject
|
||||||
|
@property(nonatomic,copy) NSString *cardId;
|
||||||
|
@property(nonatomic,copy) NSString *icon;
|
||||||
|
@property(nonatomic,copy) NSString *name;
|
||||||
|
@property(nonatomic,copy) NSArray *propVals;
|
||||||
|
|
||||||
|
@end
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,32 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendModel.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMakeFriendModel.h"
|
||||||
|
|
||||||
|
@implementation MewMainHomeMakeFriendModel
|
||||||
|
- (NSString *)playUrl{
|
||||||
|
|
||||||
|
if(self.voiceCard.propVals.count == 2){
|
||||||
|
return self.voiceCard.propVals.firstObject;
|
||||||
|
}
|
||||||
|
return @"";
|
||||||
|
}
|
||||||
|
- (NSString *)playTime{
|
||||||
|
|
||||||
|
if(self.voiceCard.propVals.count == 2){
|
||||||
|
return self.voiceCard.propVals[1];
|
||||||
|
}
|
||||||
|
return @"";
|
||||||
|
}
|
||||||
|
@end
|
||||||
|
|
||||||
|
|
||||||
|
@implementation MewMainHomeMakeFriendCardModel
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@end
|
@@ -26,7 +26,11 @@ typedef NS_ENUM(NSInteger, MewMainHomeMenuInfoModelType) {
|
|||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
@interface MewMainHomeMenuInfoModel : NSObject
|
@interface MewMainHomeMenuInfoModel : NSObject
|
||||||
|
@property(nonatomic,assign) BOOL isOneClickMatching;///是否是一键匹配
|
||||||
|
///是否更多游戏
|
||||||
@property(nonatomic,assign) BOOL isMorn;
|
@property(nonatomic,assign) BOOL isMorn;
|
||||||
|
///是否是游戏
|
||||||
|
@property(nonatomic,assign) BOOL isGame;
|
||||||
///ID 映射字段
|
///ID 映射字段
|
||||||
@property (nonatomic,copy) NSString *hid;
|
@property (nonatomic,copy) NSString *hid;
|
||||||
///显示的图片
|
///显示的图片
|
||||||
|
@@ -0,0 +1,23 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameModel.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <Foundation/Foundation.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface MewMainHomeMoreGameModel : NSObject
|
||||||
|
@property(nonatomic,assign) BOOL isShow;
|
||||||
|
@property(nonatomic,copy) NSString *mgId;
|
||||||
|
@property(nonatomic,copy) NSString *mgIdStr;
|
||||||
|
@property(nonatomic,copy) NSString *micNum;
|
||||||
|
@property(nonatomic,copy) NSString *name;
|
||||||
|
@property(nonatomic,copy) NSString *pic;
|
||||||
|
@property(nonatomic,copy) NSString *remark;
|
||||||
|
@property(nonatomic,assign) NSString *seq;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,12 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameModel.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMoreGameModel.h"
|
||||||
|
|
||||||
|
@implementation MewMainHomeMoreGameModel
|
||||||
|
|
||||||
|
@end
|
@@ -22,6 +22,23 @@ NS_ASSUME_NONNULL_BEGIN
|
|||||||
-(void)mew_getHomePersonalRoomListSuccess:(NSArray *)list;
|
-(void)mew_getHomePersonalRoomListSuccess:(NSArray *)list;
|
||||||
//获取热门房间失败
|
//获取热门房间失败
|
||||||
-(void)mew_getHomePersonalRoomListFail;
|
-(void)mew_getHomePersonalRoomListFail;
|
||||||
|
/// 发现新朋友成功
|
||||||
|
-(void)mew_getNewFriendListSuccess:(NSArray *)list gameId:(nullable NSString *)gameId;
|
||||||
|
/// 发现新朋友失败
|
||||||
|
-(void)mew_getNewFriendListFailWithGameId:(nullable NSString *)gameId;
|
||||||
|
///首页游戏点单分类
|
||||||
|
-(void)mew_getMainHomeGameTabList:(NSArray *)list;
|
||||||
|
///大神带飞
|
||||||
|
////// 一键匹配成功
|
||||||
|
-(void)mew_getMainHomeFriendChatPickDataSuccess:(NSString *)uid;
|
||||||
|
////// 一键匹配失败
|
||||||
|
-(void)mew_getMainHomeFriendChatPickDataFail:(NSString *)msg;
|
||||||
|
///得到小游戏列表成功
|
||||||
|
-(void)mew_getMainHomeLittleGameListSuccess:(NSArray *)list;
|
||||||
|
///获取游戏列表用户成功
|
||||||
|
-(void)mew_getMainHomeGameFriendListSuccess:(NSArray *)list;
|
||||||
|
///获取大神推荐成功
|
||||||
|
-(void)mew_RequestMainHomeFriendMahoganyListSuccess:(NSArray *)list;
|
||||||
@end
|
@end
|
||||||
|
|
||||||
NS_ASSUME_NONNULL_END
|
NS_ASSUME_NONNULL_END
|
||||||
|
@@ -0,0 +1,29 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendCell.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#import "MewMainHomeMakeFriendModel.h"
|
||||||
|
@class MewMainHomeMakeFriendModel,MewMainHomeMakeFriendCell;
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
@protocol MewMainHomeMakeFriendCellDelegate <NSObject>
|
||||||
|
///点击播放声音
|
||||||
|
-(void)mew_clickPlayVoiceActionWithCell:(MewMainHomeMakeFriendCell *)cell model:(MewMainHomeMakeFriendModel *)model isPlay:(BOOL)isPlay;
|
||||||
|
///点击房间
|
||||||
|
-(void)mew_clickRoomBtnActionWithModel:(MewMainHomeMakeFriendModel *)model;
|
||||||
|
///点击头像
|
||||||
|
-(void)mew_clickAvatarBtnActionWithModel:(MewMainHomeMakeFriendModel *)model;
|
||||||
|
@end
|
||||||
|
@interface MewMainHomeMakeFriendCell : UICollectionViewCell
|
||||||
|
@property(nonatomic,strong) MewMainHomeMakeFriendModel *friendModel;
|
||||||
|
@property(nonatomic,weak) id<MewMainHomeMakeFriendCellDelegate>delegate;
|
||||||
|
///声音卡倒计时
|
||||||
|
-(void)mew_setPlayVoiceTime:(NSInteger)time;
|
||||||
|
///声音卡时,svga是否播放动画
|
||||||
|
-(void)mew_setPlayVoiceStatus:(BOOL)isPlay;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,487 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendCell.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMakeFriendCell.h"
|
||||||
|
#import <SDWebImageFLPlugin/SDWebImageFLPlugin.h>
|
||||||
|
#import <SVGA.h>
|
||||||
|
#import <MarqueeLabel.h>
|
||||||
|
#import "MewMainHomeMakeFriendModel.h"
|
||||||
|
@interface MewMainHomeMakeFriendCell()
|
||||||
|
///房间背景
|
||||||
|
@property(nonatomic,strong) NetImageView *mewRoomImageView;
|
||||||
|
///在线状态背景
|
||||||
|
@property(nonatomic,strong) UIView *mewOnLineView;
|
||||||
|
///在线状态
|
||||||
|
@property(nonatomic,strong) UILabel *mewOnLineTitleView;
|
||||||
|
///在线状态绿点
|
||||||
|
@property(nonatomic,strong) UIView *mewOnLinePiontView;
|
||||||
|
///在线状态波浪
|
||||||
|
@property(nonatomic,strong) FLAnimatedImageView *mewOnLineGifView;
|
||||||
|
|
||||||
|
///声音秀背景
|
||||||
|
@property(nonatomic,strong) UIImageView *mewPlayView;
|
||||||
|
///声音秀播放按钮
|
||||||
|
@property(nonatomic,strong) UIButton *mewPlayBtn;
|
||||||
|
///声音秀静态动画
|
||||||
|
@property(nonatomic,strong) UIImageView *mewPlayImageView;
|
||||||
|
///声音秀动效
|
||||||
|
@property(nonatomic,strong) SVGAParser *mewPlayParser;
|
||||||
|
@property(nonatomic,strong) SVGAImageView *mewPlaySvgaView;
|
||||||
|
///声音秀时间
|
||||||
|
@property(nonatomic,strong) UILabel *mewPlayTimeView;
|
||||||
|
///底部背景
|
||||||
|
@property(nonatomic,strong) UIView *mewBgTitleView;
|
||||||
|
///昵称
|
||||||
|
@property(nonatomic,strong) UILabel *mewNameView;
|
||||||
|
///星座
|
||||||
|
@property(nonatomic,strong) UILabel *mewConstellationView;
|
||||||
|
///所在房间背景景
|
||||||
|
@property(nonatomic,strong) UIImageView *mewBgRoomView;
|
||||||
|
///去房间点击按钮
|
||||||
|
@property(nonatomic,strong) UIButton *mewRoomBtn;
|
||||||
|
///房间名
|
||||||
|
@property(nonatomic,strong) MarqueeLabel *mewRoomNameView;
|
||||||
|
///陪玩师
|
||||||
|
@property(nonatomic,strong) UIImageView *mewPlayerView;
|
||||||
|
///游戏背景
|
||||||
|
@property(nonatomic,strong) UIView *mewBgGameView;
|
||||||
|
///游戏图标
|
||||||
|
@property(nonatomic,strong) NetImageView *mewGameIcon;
|
||||||
|
///游戏标题
|
||||||
|
@property(nonatomic,strong) UILabel *mewGameTitleView;
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation MewMainHomeMakeFriendCell
|
||||||
|
-(instancetype)initWithFrame:(CGRect)frame{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if(self){
|
||||||
|
[self installUI];
|
||||||
|
[self installConstraints];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
-(void)installUI{
|
||||||
|
|
||||||
|
[self.contentView addSubview:self.mewRoomImageView];
|
||||||
|
|
||||||
|
[self.contentView addSubview:self.mewPlayerView];
|
||||||
|
|
||||||
|
[self.contentView addSubview:self.mewOnLineView];
|
||||||
|
[self.mewOnLineView addSubview:self.mewOnLinePiontView];
|
||||||
|
[self.mewOnLineView addSubview:self.mewOnLineGifView];
|
||||||
|
[self.mewOnLineView addSubview:self.mewOnLineTitleView];
|
||||||
|
|
||||||
|
[self.contentView addSubview:self.mewPlayView];
|
||||||
|
[self.mewPlayView addSubview:self.mewPlayBtn];
|
||||||
|
[self.mewPlayView addSubview:self.mewPlaySvgaView];
|
||||||
|
[self.mewPlayView addSubview:self.mewPlayImageView];
|
||||||
|
[self.mewPlayView addSubview:self.mewPlayTimeView];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
[self.contentView addSubview:self.mewBgGameView];
|
||||||
|
[self.mewBgGameView addSubview:self.mewGameIcon];
|
||||||
|
[self.mewBgGameView addSubview:self.mewGameTitleView];
|
||||||
|
|
||||||
|
[self.contentView addSubview:self.mewBgTitleView];
|
||||||
|
[self.mewBgTitleView addSubview:self.mewNameView];
|
||||||
|
[self.mewBgTitleView addSubview:self.mewConstellationView];
|
||||||
|
[self.mewBgTitleView addSubview:self.mewBgRoomView];
|
||||||
|
|
||||||
|
|
||||||
|
[self.mewBgRoomView addSubview:self.mewRoomBtn];
|
||||||
|
[self.mewBgRoomView addSubview:self.mewRoomNameView];
|
||||||
|
@kWeakify(self);
|
||||||
|
[self.mewPlayParser parseWithNamed:@"kMewMainHomePlayVoice" inBundle:nil completionBlock:^(SVGAVideoEntity * _Nonnull videoItem) {
|
||||||
|
@kStrongify(self);
|
||||||
|
self.mewPlaySvgaView.loops = INT_MAX;
|
||||||
|
self.mewPlaySvgaView.clearsAfterStop = NO;
|
||||||
|
self.mewPlaySvgaView.videoItem = videoItem;
|
||||||
|
[self.mewPlaySvgaView startAnimation];
|
||||||
|
} failureBlock:^(NSError * _Nullable error) {
|
||||||
|
}];
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
-(void)installConstraints{
|
||||||
|
[self.mewRoomImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.contentView);
|
||||||
|
}];
|
||||||
|
[self.mewPlayerView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(6));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(5));
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(48));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(16));
|
||||||
|
}];
|
||||||
|
[self.mewOnLineView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(50));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(17));
|
||||||
|
make.top.trailing.equalTo(self.contentView).inset(kGetScaleWidth(4));
|
||||||
|
}];
|
||||||
|
[self.mewOnLineGifView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(10));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(9));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(5));
|
||||||
|
make.centerY.equalTo(self.mewOnLineView);
|
||||||
|
}];
|
||||||
|
[self.mewOnLineTitleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(5));
|
||||||
|
make.centerY.equalTo(self.mewOnLineView);
|
||||||
|
}];
|
||||||
|
[self.mewOnLinePiontView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(5));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(5));
|
||||||
|
make.centerY.equalTo(self.mewOnLineView);
|
||||||
|
}];
|
||||||
|
[self.mewPlayView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(62));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(18));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(6));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(108));
|
||||||
|
}];
|
||||||
|
[self.mewPlayBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(16));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(1));
|
||||||
|
make.centerY.equalTo(self.mewPlayView);
|
||||||
|
}];
|
||||||
|
[self.mewPlaySvgaView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(18));
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(22));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(10));
|
||||||
|
make.centerY.equalTo(self.mewPlayView);
|
||||||
|
}];
|
||||||
|
[self.mewPlayImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.mewPlaySvgaView);
|
||||||
|
}];
|
||||||
|
[self.mewPlayTimeView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(12));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(41));
|
||||||
|
make.centerY.equalTo(self.mewPlayView);
|
||||||
|
}];
|
||||||
|
|
||||||
|
[self.mewBgGameView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.mas_greaterThanOrEqualTo(kGetScaleWidth(10));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(13));
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(4));
|
||||||
|
make.centerY.equalTo(self.mewPlayView);
|
||||||
|
}];
|
||||||
|
[self.mewGameIcon mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(15));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(-1));
|
||||||
|
make.centerY.equalTo(self.mewBgGameView);
|
||||||
|
}];
|
||||||
|
[self.mewGameTitleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(4));
|
||||||
|
make.centerY.equalTo(self.mewBgGameView);
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(15));
|
||||||
|
}];
|
||||||
|
[self.mewBgTitleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.bottom.leading.trailing.mas_equalTo(0);
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(54));
|
||||||
|
}];
|
||||||
|
[self.mewConstellationView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(39));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(15));
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(8));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(9));
|
||||||
|
}];
|
||||||
|
[self.mewNameView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.top.mas_equalTo(kGetScaleWidth(8));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(17));
|
||||||
|
make.trailing.equalTo(self.mewConstellationView.mas_leading).mas_offset(-kGetScaleWidth(5));
|
||||||
|
}];
|
||||||
|
[self.mewBgRoomView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(6));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(28));
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(9));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(18));
|
||||||
|
}];
|
||||||
|
[self.mewRoomBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(14));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(6));
|
||||||
|
make.centerY.equalTo(self.mewBgRoomView);
|
||||||
|
}];
|
||||||
|
[self.mewRoomNameView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(22));
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(6));
|
||||||
|
make.centerY.equalTo(self.mewBgRoomView);
|
||||||
|
}];
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)mew_clickPlayVoiceAction{
|
||||||
|
self.mewPlayBtn.selected = !self.mewPlayBtn.selected;
|
||||||
|
_mewPlaySvgaView.hidden = !self.mewPlayBtn.selected;
|
||||||
|
_mewPlayImageView.hidden = self.mewPlayBtn.selected;
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_clickPlayVoiceActionWithCell:model:isPlay:)]){
|
||||||
|
[self.delegate mew_clickPlayVoiceActionWithCell:self model:self.friendModel isPlay:self.mewPlayBtn.selected];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
///声音卡倒计时
|
||||||
|
-(void)mew_setPlayVoiceTime:(NSInteger)time{
|
||||||
|
_mewPlayTimeView.text = [NSString stringWithFormat:@"%@\"",@(time).stringValue];
|
||||||
|
}
|
||||||
|
///声音卡时,svga是否播放动画
|
||||||
|
-(void)mew_setPlayVoiceStatus:(BOOL)isPlay{
|
||||||
|
_mewPlayBtn.selected = isPlay;
|
||||||
|
_mewPlaySvgaView.hidden = !isPlay;
|
||||||
|
_mewPlayImageView.hidden = isPlay;
|
||||||
|
if(_friendModel.voiceCard != nil){
|
||||||
|
_mewPlayTimeView.text = [NSString stringWithFormat:@"%@\"",_friendModel.playTime];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-(void)mew_clickRoomBtnAction{
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_clickRoomBtnActionWithModel:)]){
|
||||||
|
[self.delegate mew_clickRoomBtnActionWithModel:self.friendModel];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-(void)mew_clickAvatarBtnAction{
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_clickAvatarBtnActionWithModel:)]){
|
||||||
|
[self.delegate mew_clickAvatarBtnActionWithModel:self.friendModel];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-(void)setFriendModel:(MewMainHomeMakeFriendModel *)friendModel{
|
||||||
|
_friendModel = friendModel;
|
||||||
|
_mewRoomImageView.image = nil;
|
||||||
|
[_mewRoomImageView loadImageWithUrl:_friendModel.avatar completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
self.mewRoomImageView.image = image;
|
||||||
|
}];
|
||||||
|
NSString *nick = _friendModel.nick;
|
||||||
|
self.mewNameView.text = nick;
|
||||||
|
if (!_friendModel.birth) {
|
||||||
|
_friendModel.birth = -28800000; //默认的1970/01/01
|
||||||
|
}
|
||||||
|
self.mewConstellationView.text = [NSString calculateConstellationWithMonth:_friendModel.birth];
|
||||||
|
self.mewOnLineView.hidden = YES;
|
||||||
|
self.mewOnLineGifView.hidden = YES;
|
||||||
|
self.mewOnLinePiontView.hidden = YES;
|
||||||
|
if (_friendModel.inRoomUid.length == 0) {
|
||||||
|
if(_friendModel.inOnline == YES){
|
||||||
|
self.mewOnLineView.hidden = NO;
|
||||||
|
self.mewOnLinePiontView.hidden = NO;
|
||||||
|
self.mewOnLineTitleView.text = @"空闲中";
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
self.mewOnLineView.hidden = NO;
|
||||||
|
self.mewOnLineGifView.hidden = NO;
|
||||||
|
self.mewOnLineTitleView.text = @"直播中";
|
||||||
|
}
|
||||||
|
|
||||||
|
_mewBgGameView.hidden = YES;
|
||||||
|
_mewPlayerView.hidden = YES;
|
||||||
|
if(_friendModel.userGamePartnerVo){
|
||||||
|
_mewPlayerView.hidden = NO;
|
||||||
|
_mewBgGameView.hidden = NO;
|
||||||
|
_mewGameIcon.image = nil;
|
||||||
|
[_mewGameIcon loadImageWithUrl:_friendModel.userGamePartnerVo.firstLogo completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
self.mewGameIcon.image = image;
|
||||||
|
}];
|
||||||
|
NSString *gameName = @"";
|
||||||
|
if(_friendModel.userGamePartnerVo.firstGameName.length > 0 && _friendModel.userGamePartnerVo.secondGameName.length > 0){
|
||||||
|
gameName = [NSString stringWithFormat:@"%@|%@",_friendModel.userGamePartnerVo.firstGameName,_friendModel.userGamePartnerVo.secondGameName];
|
||||||
|
}else if(_friendModel.userGamePartnerVo.firstGameName.length > 0){
|
||||||
|
gameName = _friendModel.userGamePartnerVo.firstGameName;
|
||||||
|
}else if(_friendModel.userGamePartnerVo.secondGameName.length > 0){
|
||||||
|
gameName = _friendModel.userGamePartnerVo.secondGameName;
|
||||||
|
}
|
||||||
|
_mewGameTitleView.text = gameName;
|
||||||
|
}
|
||||||
|
_mewPlayView.hidden = YES;
|
||||||
|
if(_friendModel.voiceCard != nil){
|
||||||
|
_mewPlayView.hidden = NO;
|
||||||
|
_mewPlayTimeView.text = [NSString stringWithFormat:@"%@\"",_friendModel.playTime];
|
||||||
|
}
|
||||||
|
_mewBgRoomView.hidden = YES;
|
||||||
|
if(_friendModel.roomTitle.length > 0){
|
||||||
|
_mewBgRoomView.hidden = NO;
|
||||||
|
_mewRoomNameView.text = _friendModel.roomTitle;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#pragma mark - 懒加载
|
||||||
|
- (NetImageView *)mewRoomImageView{
|
||||||
|
if(!_mewRoomImageView){
|
||||||
|
NetImageConfig *config = [[NetImageConfig alloc]init];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_mewRoomImageView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
_mewRoomImageView.contentMode = UIViewContentModeScaleAspectFill;
|
||||||
|
_mewRoomImageView.clipsToBounds = YES ;
|
||||||
|
_mewRoomImageView.layer.cornerRadius = kGetScaleWidth(12);
|
||||||
|
_mewRoomImageView.layer.masksToBounds = YES;
|
||||||
|
[_mewBgTitleView setCornerWithLeftTopCorner:kGetScaleWidth(12) rightTopCorner:kGetScaleWidth(12) bottomLeftCorner:kGetScaleWidth(12) bottomRightCorner:kGetScaleWidth(12) size:CGSizeMake(kGetScaleWidth(168), kGetScaleWidth(184))];
|
||||||
|
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(mew_clickAvatarBtnAction)];
|
||||||
|
_mewRoomImageView.userInteractionEnabled = YES;
|
||||||
|
[_mewRoomImageView addGestureRecognizer:tap];
|
||||||
|
}
|
||||||
|
return _mewRoomImageView;
|
||||||
|
}
|
||||||
|
- (UIView *)mewOnLineView{
|
||||||
|
if(!_mewOnLineView){
|
||||||
|
_mewOnLineView = [UIView new];
|
||||||
|
_mewOnLineView.backgroundColor = UIColorRGBAlpha(0x000000, 0.3);
|
||||||
|
_mewOnLineView.layer.cornerRadius = kGetScaleWidth(17)/2;
|
||||||
|
_mewOnLineView.layer.masksToBounds = YES;
|
||||||
|
}
|
||||||
|
return _mewOnLineView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewOnLineTitleView{
|
||||||
|
if(!_mewOnLineTitleView){
|
||||||
|
_mewOnLineTitleView = [UILabel labelInitWithText:@"" font:kFontRegular(9) textColor:[UIColor whiteColor]];
|
||||||
|
}
|
||||||
|
return _mewOnLineTitleView;
|
||||||
|
}
|
||||||
|
- (UIView *)mewOnLinePiontView{
|
||||||
|
if(!_mewOnLinePiontView){
|
||||||
|
_mewOnLinePiontView = [UIView new];
|
||||||
|
_mewOnLinePiontView.backgroundColor = UIColorFromRGB(0x4DFF91);
|
||||||
|
_mewOnLinePiontView.layer.cornerRadius = kGetScaleWidth(5)/2;
|
||||||
|
_mewOnLinePiontView.layer.masksToBounds = YES;
|
||||||
|
}
|
||||||
|
return _mewOnLinePiontView;
|
||||||
|
}
|
||||||
|
- (FLAnimatedImageView *)mewOnLineGifView{
|
||||||
|
if(!_mewOnLineGifView){
|
||||||
|
_mewOnLineGifView = [FLAnimatedImageView new];
|
||||||
|
NSData *localData = [NSData dataWithContentsOfFile:[[NSBundle mainBundle] pathForResource:@"mew_main_home_heat.gif" ofType:nil]];
|
||||||
|
FLAnimatedImage *animatedImage = [FLAnimatedImage animatedImageWithGIFData:localData];
|
||||||
|
_mewOnLineGifView.animatedImage = animatedImage;
|
||||||
|
|
||||||
|
}
|
||||||
|
return _mewOnLineGifView;
|
||||||
|
}
|
||||||
|
- (SVGAParser *)mewPlayParser{
|
||||||
|
if(!_mewPlayParser){
|
||||||
|
_mewPlayParser = [SVGAParser new];
|
||||||
|
}
|
||||||
|
return _mewPlayParser;
|
||||||
|
}
|
||||||
|
- (SVGAImageView *)mewPlaySvgaView {
|
||||||
|
if (_mewPlaySvgaView == nil) {
|
||||||
|
_mewPlaySvgaView = [[SVGAImageView alloc]init];
|
||||||
|
_mewPlaySvgaView.contentMode = UIViewContentModeScaleToFill;
|
||||||
|
_mewPlaySvgaView.hidden = YES;
|
||||||
|
_mewPlaySvgaView.backgroundColor = [UIColor clearColor];
|
||||||
|
}
|
||||||
|
return _mewPlaySvgaView;
|
||||||
|
}
|
||||||
|
- (UIImageView *)mewPlayImageView{
|
||||||
|
if(!_mewPlayImageView){
|
||||||
|
_mewPlayImageView = [UIImageView new];
|
||||||
|
_mewPlayImageView.image = kImage(@"mew_main_home_friend_cell_play_icom_bg");
|
||||||
|
}
|
||||||
|
return _mewPlayImageView;
|
||||||
|
}
|
||||||
|
- (UIImageView *)mewPlayView{
|
||||||
|
if(!_mewPlayView){
|
||||||
|
_mewPlayView = [UIImageView new];
|
||||||
|
_mewPlayView.image = kImage(@"mew_main_home_friend_cell_play_bg");
|
||||||
|
_mewPlayView.userInteractionEnabled = YES;
|
||||||
|
|
||||||
|
}
|
||||||
|
return _mewPlayView;
|
||||||
|
}
|
||||||
|
- (UIButton *)mewPlayBtn{
|
||||||
|
if(!_mewPlayBtn){
|
||||||
|
_mewPlayBtn = [UIButton new];
|
||||||
|
[_mewPlayBtn setEnlargeEdgeWithTop:10 right:10 bottom:10 left:10];
|
||||||
|
[_mewPlayBtn setBackgroundImage:kImage(@"mew_main_home_friend_cell_no_play") forState:UIControlStateNormal];
|
||||||
|
[_mewPlayBtn setBackgroundImage:kImage(@"mew_main_home_friend_cell_play") forState:UIControlStateSelected];
|
||||||
|
[_mewPlayBtn addTarget:self action:@selector(mew_clickPlayVoiceAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
|
}
|
||||||
|
return _mewPlayBtn;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewPlayTimeView{
|
||||||
|
if(!_mewPlayTimeView){
|
||||||
|
_mewPlayTimeView = [UILabel labelInitWithText:@"0\"" font:kFontMedium(10) textColor:UIColorFromRGB(0x2B2D33)];
|
||||||
|
}
|
||||||
|
return _mewPlayTimeView;
|
||||||
|
}
|
||||||
|
- (UIView *)mewBgTitleView{
|
||||||
|
if(!_mewBgTitleView){
|
||||||
|
_mewBgTitleView = [UIView new];
|
||||||
|
_mewBgTitleView.backgroundColor = [UIColor whiteColor];
|
||||||
|
[_mewBgTitleView setCornerWithLeftTopCorner:0 rightTopCorner:kGetScaleWidth(12) bottomLeftCorner:kGetScaleWidth(12) bottomRightCorner:kGetScaleWidth(12) size:CGSizeMake(kGetScaleWidth(168), kGetScaleWidth(54))];
|
||||||
|
}
|
||||||
|
return _mewBgTitleView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewNameView{
|
||||||
|
if(!_mewNameView){
|
||||||
|
_mewNameView = [UILabel labelInitWithText:@"" font:kFontMedium(12) textColor:UIColorFromRGB(0x2B2D33)];
|
||||||
|
}
|
||||||
|
return _mewNameView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewConstellationView{
|
||||||
|
if(!_mewConstellationView){
|
||||||
|
_mewConstellationView = [UILabel labelInitWithText:@"" font:kFontRegular(8) textColor:UIColorFromRGB(0x9168FA)];
|
||||||
|
_mewConstellationView.backgroundColor = UIColorRGBAlpha(0x9168FA, 0.2);
|
||||||
|
_mewConstellationView.textAlignment = NSTextAlignmentCenter;
|
||||||
|
_mewConstellationView.layer.cornerRadius = kGetScaleWidth(15)/2;
|
||||||
|
_mewConstellationView.layer.masksToBounds = YES;
|
||||||
|
}
|
||||||
|
return _mewConstellationView;
|
||||||
|
}
|
||||||
|
- (UIView *)mewBgRoomView{
|
||||||
|
if(!_mewBgRoomView){
|
||||||
|
_mewBgRoomView = [UIImageView new];
|
||||||
|
_mewBgRoomView.image = kImage(@"mew_main_home_friend_cell_room_bg");
|
||||||
|
_mewBgRoomView.userInteractionEnabled = YES;
|
||||||
|
}
|
||||||
|
return _mewBgRoomView;
|
||||||
|
}
|
||||||
|
- (UIButton *)mewRoomBtn{
|
||||||
|
if(!_mewRoomBtn){
|
||||||
|
_mewRoomBtn = [UIButton new];
|
||||||
|
[_mewRoomBtn setBackgroundImage:kImage(@"mew_main_home_friend_cell_room") forState:UIControlStateNormal];
|
||||||
|
[_mewRoomBtn addTarget:self action:@selector(mew_clickRoomBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
|
}
|
||||||
|
return _mewRoomBtn;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewRoomNameView{
|
||||||
|
if(!_mewRoomNameView){
|
||||||
|
_mewRoomNameView = [[MarqueeLabel alloc] init];
|
||||||
|
_mewRoomNameView.scrollDuration = 8.0;
|
||||||
|
_mewRoomNameView.fadeLength = 6.0f;
|
||||||
|
_mewRoomNameView.font = kFontRegular(10);
|
||||||
|
_mewRoomNameView.textColor = UIColorFromRGB(0x696D7A);
|
||||||
|
}
|
||||||
|
return _mewRoomNameView;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UIView *)mewBgGameView{
|
||||||
|
if(!_mewBgGameView){
|
||||||
|
_mewBgGameView = [UIView new];
|
||||||
|
_mewBgGameView.backgroundColor = UIColorRGBAlpha(0x000000, 0.3);
|
||||||
|
_mewBgGameView.layer.cornerRadius = kGetScaleWidth(13)/2;
|
||||||
|
_mewBgGameView.layer.masksToBounds = YES;
|
||||||
|
}
|
||||||
|
return _mewBgGameView;
|
||||||
|
}
|
||||||
|
- (NetImageView *)mewGameIcon{
|
||||||
|
if(!_mewGameIcon){
|
||||||
|
NetImageConfig *config = [NetImageConfig new];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_mewGameIcon = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
}
|
||||||
|
return _mewGameIcon;
|
||||||
|
}
|
||||||
|
-(UILabel *)mewGameTitleView{
|
||||||
|
if(!_mewGameTitleView){
|
||||||
|
_mewGameTitleView = [UILabel labelInitWithText:@"" font:kFontMedium(7) textColor:[UIColor whiteColor]];
|
||||||
|
}
|
||||||
|
return _mewGameTitleView;
|
||||||
|
}
|
||||||
|
- (UIImageView *)mewPlayerView{
|
||||||
|
if(!_mewPlayerView){
|
||||||
|
_mewPlayerView = [UIImageView new];
|
||||||
|
_mewPlayerView.image = kImage(@"mew_main_home_friend_cell_player");
|
||||||
|
}
|
||||||
|
return _mewPlayerView;
|
||||||
|
}
|
||||||
|
@end
|
@@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendEmptyCell.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/26.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface MewMainHomeMakeFriendEmptyCell : UICollectionViewCell
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,97 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendEmptyCell.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/26.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMakeFriendEmptyCell.h"
|
||||||
|
@interface MewMainHomeMakeFriendEmptyCell()
|
||||||
|
@property(nonatomic,strong) UIImageView *mewIconView;
|
||||||
|
@property(nonatomic,strong) UILabel *mewTitleView;
|
||||||
|
@property(nonatomic,strong) UIView *mewHintBgView;
|
||||||
|
@property(nonatomic,strong) UIView *mewLineView;
|
||||||
|
@property(nonatomic,strong) UILabel *mewHintTextView;
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation MewMainHomeMakeFriendEmptyCell
|
||||||
|
-(instancetype)initWithFrame:(CGRect)frame{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if(self){
|
||||||
|
[self installUI];
|
||||||
|
[self installConstraints];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
-(void)installUI{
|
||||||
|
[self.contentView addSubview:self.mewIconView];
|
||||||
|
[self.contentView addSubview:self.mewTitleView];
|
||||||
|
[self.contentView addSubview:self.mewHintBgView];
|
||||||
|
[self.mewHintBgView addSubview:self.mewLineView];
|
||||||
|
[self.mewHintBgView addSubview:self.mewHintTextView];
|
||||||
|
}
|
||||||
|
-(void)installConstraints{
|
||||||
|
[self.mewIconView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(159));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(138));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(14));
|
||||||
|
make.centerX.equalTo(self.contentView);
|
||||||
|
}];
|
||||||
|
[self.mewTitleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.equalTo(self.mewIconView.mas_bottom).mas_offset(kGetScaleWidth(3));
|
||||||
|
make.centerX.equalTo(self.contentView);
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(20));
|
||||||
|
}];
|
||||||
|
[self.mewHintBgView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.equalTo(self.mewTitleView.mas_bottom).mas_offset(kGetScaleWidth(28));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(48));
|
||||||
|
make.leading.trailing.equalTo(self.contentView).inset(kGetScaleWidth(0));
|
||||||
|
}];
|
||||||
|
[self.mewLineView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.trailing.equalTo(self.contentView).inset(kGetScaleWidth(28));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(1));
|
||||||
|
make.centerY.equalTo(self.mewHintBgView);
|
||||||
|
}];
|
||||||
|
[self.mewHintTextView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(96));
|
||||||
|
make.center.equalTo(self.mewHintBgView);
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(20));
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
#pragma mark - 懒加载
|
||||||
|
- (UIImageView *)mewIconView{
|
||||||
|
if(!_mewIconView){
|
||||||
|
_mewIconView = [UIImageView new];
|
||||||
|
_mewIconView.image = kImage(@"mew_main_home_friend_empty_icon");
|
||||||
|
}
|
||||||
|
return _mewIconView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewTitleView{
|
||||||
|
if(!_mewTitleView){
|
||||||
|
_mewTitleView = [UILabel labelInitWithText:@"暂未找到合适的伙伴" font:kFontRegular(14) textColor:UIColorFromRGB(0x696D7A)];
|
||||||
|
}
|
||||||
|
return _mewTitleView;
|
||||||
|
}
|
||||||
|
- (UIView *)mewHintBgView{
|
||||||
|
if(!_mewHintBgView){
|
||||||
|
_mewHintBgView = [UIView new];
|
||||||
|
_mewHintBgView.backgroundColor = [UIColor whiteColor];
|
||||||
|
}
|
||||||
|
return _mewHintBgView;
|
||||||
|
}
|
||||||
|
- (UIView *)mewLineView{
|
||||||
|
if(!_mewLineView){
|
||||||
|
_mewLineView = [UIView new];
|
||||||
|
_mewLineView.backgroundColor = UIColorFromRGB(0xE9EBF2);
|
||||||
|
}
|
||||||
|
return _mewLineView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewHintTextView{
|
||||||
|
if(!_mewHintTextView){
|
||||||
|
_mewHintTextView = [UILabel labelInitWithText:@"大神推荐" font:kFontMedium(14) textColor:UIColorFromRGB(0x2B2D33)];
|
||||||
|
_mewHintTextView.textAlignment = NSTextAlignmentCenter;
|
||||||
|
_mewHintTextView.backgroundColor = [UIColor whiteColor];
|
||||||
|
}
|
||||||
|
return _mewHintTextView;
|
||||||
|
}
|
||||||
|
@end
|
@@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendHeadCell.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#import "MewMainHomeGameTabModel.h"
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface MewMainHomeMakeFriendHeadCell : UICollectionViewCell
|
||||||
|
@property(nonatomic,strong) MewMainHomeGameTabModel *tabModel;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,66 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendHeadCell.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMakeFriendHeadCell.h"
|
||||||
|
@interface MewMainHomeMakeFriendHeadCell()
|
||||||
|
@property(nonatomic,strong) NetImageView *mewUnclickView;
|
||||||
|
@property(nonatomic,strong) NetImageView *mewClickView;
|
||||||
|
@end
|
||||||
|
@implementation MewMainHomeMakeFriendHeadCell
|
||||||
|
-(instancetype)initWithFrame:(CGRect)frame{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if(self){
|
||||||
|
[self installUI];
|
||||||
|
[self installConstraints];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
-(void)installUI{
|
||||||
|
[self.contentView addSubview:self.mewUnclickView];
|
||||||
|
[self.contentView addSubview:self.mewClickView];
|
||||||
|
}
|
||||||
|
-(void)installConstraints{
|
||||||
|
[self.mewClickView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.contentView);
|
||||||
|
}];
|
||||||
|
[self.mewUnclickView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.contentView);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
- (void)setTabModel:(MewMainHomeGameTabModel *)tabModel{
|
||||||
|
_tabModel = tabModel;
|
||||||
|
self.mewClickView.image = nil;
|
||||||
|
self.mewUnclickView.image = nil;
|
||||||
|
self.mewClickView.hidden = !_tabModel.isOnClick;
|
||||||
|
self.mewUnclickView.hidden = _tabModel.isOnClick;
|
||||||
|
[self.mewClickView loadImageWithUrl:_tabModel.onClick completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
self.mewClickView.image = image;
|
||||||
|
}];
|
||||||
|
[self.mewUnclickView loadImageWithUrl:_tabModel.onUnclick completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
self.mewUnclickView.image = image;
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
#pragma mark - 懒加载
|
||||||
|
- (NetImageView *)mewUnclickView{
|
||||||
|
if(!_mewUnclickView){
|
||||||
|
NetImageConfig *config = [NetImageConfig new];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_mewUnclickView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
|
||||||
|
}
|
||||||
|
return _mewUnclickView;
|
||||||
|
}
|
||||||
|
- (NetImageView *)mewClickView{
|
||||||
|
if(!_mewClickView){
|
||||||
|
NetImageConfig *config = [NetImageConfig new];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_mewClickView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
|
||||||
|
}
|
||||||
|
return _mewClickView;
|
||||||
|
}
|
||||||
|
@end
|
@@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameCell.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#import "MewMainHomeHotRoomModel.h"
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface MewMainHomeMoreGameCell : UICollectionViewCell
|
||||||
|
@property(nonatomic,strong) MewMainHomeHotRoomModel *moreGameModel;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,187 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameCell.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMoreGameCell.h"
|
||||||
|
@interface MewMainHomeMoreGameCell()
|
||||||
|
@property(nonatomic,strong) NetImageView *mewBgImageView;
|
||||||
|
@property(nonatomic,strong) NetImageView *mewIconView;
|
||||||
|
@property(nonatomic,strong) UILabel *mewTitleView;
|
||||||
|
@property(nonatomic,strong) UILabel *mewSubView;
|
||||||
|
@property(nonatomic,strong) UIImageView *mewHotView;
|
||||||
|
@property(nonatomic,strong) UILabel *mewHotNumView;
|
||||||
|
@property(nonatomic,strong) UIView *mewMicNumBgView;
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation MewMainHomeMoreGameCell
|
||||||
|
-(instancetype)initWithFrame:(CGRect)frame{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if(self){
|
||||||
|
[self installUI];
|
||||||
|
[self installConstraints];
|
||||||
|
for (int i = 0; i < 5; i++) {
|
||||||
|
NetImageConfig *config = [NetImageConfig new];
|
||||||
|
config.placeHolder = i == 4 ? kImage(@"mew_main_home_more_game_add"):kImage(@"mew_main_home_more_game_mic");
|
||||||
|
NetImageView *imageView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
[self.mewMicNumBgView addSubview:imageView];
|
||||||
|
imageView.tag = 99+i;
|
||||||
|
imageView.layer.cornerRadius = kGetScaleWidth(18)/2;
|
||||||
|
imageView.layer.masksToBounds = YES;
|
||||||
|
imageView.layer.borderWidth = 0;
|
||||||
|
imageView.layer.borderColor = [UIColor whiteColor].CGColor;
|
||||||
|
CGFloat x = kGetScaleWidth(6) + i * kGetScaleWidth(12);
|
||||||
|
[imageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(x);
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(18));
|
||||||
|
make.centerY.equalTo(self.mewMicNumBgView);
|
||||||
|
}];
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
-(void)installUI{
|
||||||
|
[self.contentView addSubview:self.mewBgImageView];
|
||||||
|
[self.contentView addSubview:self.mewIconView];
|
||||||
|
[self.contentView addSubview:self.mewTitleView];
|
||||||
|
[self.contentView addSubview:self.mewSubView];
|
||||||
|
[self.contentView addSubview:self.mewHotView];
|
||||||
|
[self.contentView addSubview:self.mewHotNumView];
|
||||||
|
[self.contentView addSubview:self.mewMicNumBgView];
|
||||||
|
}
|
||||||
|
-(void)installConstraints{
|
||||||
|
[self.mewBgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.contentView);
|
||||||
|
}];
|
||||||
|
[self.mewIconView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(40));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(8));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(12));
|
||||||
|
}];
|
||||||
|
|
||||||
|
[self.mewTitleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(52));
|
||||||
|
make.centerY.equalTo(self.mewIconView);
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(20));
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(9));
|
||||||
|
}];
|
||||||
|
[self.mewSubView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(12));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(62));
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(9));
|
||||||
|
}];
|
||||||
|
[self.mewHotNumView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(10));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(14));
|
||||||
|
make.bottom.mas_equalTo(-kGetScaleWidth(14));
|
||||||
|
}];
|
||||||
|
[self.mewHotView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(12));
|
||||||
|
make.centerY.equalTo(self.mewHotNumView);
|
||||||
|
make.trailing.equalTo(self.mewHotNumView.mas_leading).mas_offset(-kGetScaleWidth(1));
|
||||||
|
}];
|
||||||
|
[self.mewMicNumBgView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(22));
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(78));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(10));
|
||||||
|
make.centerY.equalTo(self.mewHotView);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
-(void)setMoreGameModel:(MewMainHomeHotRoomModel *)moreGameModel{
|
||||||
|
_moreGameModel = moreGameModel;
|
||||||
|
_mewBgImageView.image = nil;
|
||||||
|
[_mewBgImageView loadImageWithUrl:_moreGameModel.backgroundPic completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
self.mewBgImageView.image = image;
|
||||||
|
}];
|
||||||
|
_mewIconView.image = nil;
|
||||||
|
[_mewIconView loadImageWithUrl:_moreGameModel.avatar completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
self.mewIconView.image = image;
|
||||||
|
}];
|
||||||
|
_mewTitleView.text = _moreGameModel.title;
|
||||||
|
_mewHotNumView.text = @(_moreGameModel.onlineNum).stringValue;
|
||||||
|
if(_moreGameModel.mgId == nil){
|
||||||
|
_mewSubView.text = @"扩列交友";
|
||||||
|
}else{
|
||||||
|
_mewSubView.text = _moreGameModel.state == 1 ? @"游戏进行中,立即围观":@"游戏未开始,等待加入";
|
||||||
|
}
|
||||||
|
|
||||||
|
for (int i = 0; i < 5; i++) {
|
||||||
|
NetImageView *imageView = [self.mewMicNumBgView viewWithTag:99+i];
|
||||||
|
if(i < _moreGameModel.micUsers.count){
|
||||||
|
MewMainHomeHotMicUserModel *userModel = [_moreGameModel.micUsers safeObjectAtIndex1:i];
|
||||||
|
imageView.image = nil;
|
||||||
|
[imageView loadImageWithUrl:userModel.avatar completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
imageView.image = image;
|
||||||
|
}];
|
||||||
|
imageView.layer.borderWidth = 1;
|
||||||
|
}else{
|
||||||
|
imageView.image = i == 4 ? kImage(@"mew_main_home_more_game_add"):kImage(@"mew_main_home_more_game_mic");
|
||||||
|
imageView.layer.borderWidth = 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
#pragma mark - 懒加载
|
||||||
|
- (NetImageView *)mewBgImageView{
|
||||||
|
if(!_mewBgImageView){
|
||||||
|
NetImageConfig *config = [NetImageConfig new];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_mewBgImageView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
_mewBgImageView.contentMode = UIViewContentModeScaleAspectFill;
|
||||||
|
_mewBgImageView.clipsToBounds = YES ;
|
||||||
|
_mewBgImageView.layer.cornerRadius = kGetScaleWidth(12);
|
||||||
|
_mewBgImageView.layer.masksToBounds = YES;
|
||||||
|
}
|
||||||
|
return _mewBgImageView;
|
||||||
|
}
|
||||||
|
- (NetImageView *)mewIconView{
|
||||||
|
if(!_mewIconView){
|
||||||
|
NetImageConfig *config = [[NetImageConfig alloc]init];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_mewIconView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
_mewIconView.layer.cornerRadius = kGetScaleWidth(40)/2;
|
||||||
|
_mewIconView.layer.masksToBounds = YES;
|
||||||
|
}
|
||||||
|
return _mewIconView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewTitleView{
|
||||||
|
if(!_mewTitleView){
|
||||||
|
_mewTitleView = [UILabel labelInitWithText:@"" font:kFontMedium(14) textColor:UIColorFromRGB(0x2B2D33)];
|
||||||
|
|
||||||
|
}
|
||||||
|
return _mewTitleView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewSubView{
|
||||||
|
if(!_mewSubView){
|
||||||
|
_mewSubView = [UILabel labelInitWithText:@"" font:kFontRegular(11) textColor:UIColorFromRGB(0x696D7A)];
|
||||||
|
}
|
||||||
|
return _mewSubView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewHotNumView{
|
||||||
|
if(!_mewHotNumView){
|
||||||
|
_mewHotNumView = [UILabel labelInitWithText:@"0" font:kFontBold(11) textColor:UIColorFromRGB(0x696D7A)];
|
||||||
|
}
|
||||||
|
return _mewHotNumView;
|
||||||
|
}
|
||||||
|
- (UIImageView *)mewHotView{
|
||||||
|
if(!_mewHotView){
|
||||||
|
_mewHotView = [UIImageView new];
|
||||||
|
_mewHotView.image = kImage(@"mew_main_home_more_game_hot");
|
||||||
|
}
|
||||||
|
return _mewHotView;
|
||||||
|
}
|
||||||
|
- (UIView *)mewMicNumBgView{
|
||||||
|
if(!_mewMicNumBgView){
|
||||||
|
_mewMicNumBgView = [UIView new];
|
||||||
|
_mewMicNumBgView.backgroundColor = [UIColor colorWithWhite:1 alpha:0.6];
|
||||||
|
_mewMicNumBgView.layer.cornerRadius = kGetScaleWidth(22)/2;
|
||||||
|
_mewMicNumBgView.layer.masksToBounds = YES;
|
||||||
|
_mewMicNumBgView.layer.borderWidth = 0.5;
|
||||||
|
_mewMicNumBgView.layer.borderColor = [UIColor whiteColor].CGColor;
|
||||||
|
}
|
||||||
|
return _mewMicNumBgView;
|
||||||
|
}
|
||||||
|
@end
|
@@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameHeadCell.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#import "MewMainHomeLittleGameInfoModel.h"
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface MewMainHomeMoreGameHeadCell : UICollectionViewCell
|
||||||
|
@property(nonatomic,strong) MewMainHomeLittleGameInfoModel *gameModel;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,52 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameHeadCell.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMoreGameHeadCell.h"
|
||||||
|
@interface MewMainHomeMoreGameHeadCell()
|
||||||
|
@property(nonatomic,strong) NetImageView *imageView;
|
||||||
|
@end
|
||||||
|
@implementation MewMainHomeMoreGameHeadCell
|
||||||
|
-(instancetype)initWithFrame:(CGRect)frame{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if(self){
|
||||||
|
[self installUI];
|
||||||
|
[self installConstraints];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
-(void)installUI{
|
||||||
|
[self.contentView addSubview:self.imageView];
|
||||||
|
}
|
||||||
|
-(void)installConstraints{
|
||||||
|
[self.imageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.contentView);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
-(void)setGameModel:(MewMainHomeLittleGameInfoModel *)gameModel{
|
||||||
|
_gameModel = gameModel;
|
||||||
|
if([_gameModel.mgId isEqualToString:@"-9999"]){
|
||||||
|
_imageView.image = kImage(@"mew_main_home_more_game_friend");
|
||||||
|
return;
|
||||||
|
|
||||||
|
}
|
||||||
|
_imageView.image = nil;
|
||||||
|
[_imageView loadImageWithUrl:_gameModel.pic completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
self.imageView.image = image;
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
#pragma mark - 懒加载
|
||||||
|
- (NetImageView *)imageView{
|
||||||
|
if(!_imageView){
|
||||||
|
NetImageConfig *config = [NetImageConfig new];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_imageView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
_imageView.contentMode = UIViewContentModeScaleAspectFill;
|
||||||
|
_imageView.clipsToBounds = YES ;
|
||||||
|
}
|
||||||
|
return _imageView;
|
||||||
|
}
|
||||||
|
@end
|
@@ -65,7 +65,7 @@
|
|||||||
-(void)installUI{
|
-(void)installUI{
|
||||||
[self.contentView addSubview:self.mewBgImageView];
|
[self.contentView addSubview:self.mewBgImageView];
|
||||||
[self.mewBgImageView addSubview:self.mewMaskView];
|
[self.mewBgImageView addSubview:self.mewMaskView];
|
||||||
[self.mewBgImageView addSubview:self.mewTopOneView];
|
[self.contentView addSubview:self.mewTopOneView];
|
||||||
[self.contentView addSubview:self.mewTagView];
|
[self.contentView addSubview:self.mewTagView];
|
||||||
[self.mewTagView addSubview:self.mewHeatGifView];
|
[self.mewTagView addSubview:self.mewHeatGifView];
|
||||||
[self.contentView addSubview:self.mewPKImageView];
|
[self.contentView addSubview:self.mewPKImageView];
|
||||||
@@ -108,10 +108,14 @@
|
|||||||
}
|
}
|
||||||
-(void)installConstraints{
|
-(void)installConstraints{
|
||||||
[self.mewBgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.mewBgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.edges.equalTo(self.contentView);
|
make.centerX.equalTo(self.contentView);
|
||||||
|
make.bottom.equalTo(self.contentView).mas_offset(-kGetScaleWidth(2));
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(168));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(164));
|
||||||
}];
|
}];
|
||||||
|
|
||||||
[self.mewTopOneView mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.mewTopOneView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.edges.equalTo(self.mewBgImageView);
|
make.edges.equalTo(self.contentView);
|
||||||
}];
|
}];
|
||||||
[self.mewMaskView mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.mewMaskView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.edges.equalTo(self.mewBgImageView);
|
make.edges.equalTo(self.mewBgImageView);
|
||||||
@@ -212,6 +216,7 @@
|
|||||||
- (NetImageView *)mewTopOneView{
|
- (NetImageView *)mewTopOneView{
|
||||||
if(!_mewTopOneView){
|
if(!_mewTopOneView){
|
||||||
_mewTopOneView = [NetImageView new];
|
_mewTopOneView = [NetImageView new];
|
||||||
|
|
||||||
}
|
}
|
||||||
return _mewTopOneView;
|
return _mewTopOneView;
|
||||||
}
|
}
|
||||||
|
@@ -90,7 +90,7 @@
|
|||||||
[self.mewGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.mewGiftView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.leading.equalTo(self.mewReceiverTextView.mas_trailing).mas_offset(kGetScaleWidth(4));
|
make.leading.equalTo(self.mewReceiverTextView.mas_trailing).mas_offset(kGetScaleWidth(4));
|
||||||
make.centerY.equalTo(self);
|
make.centerY.equalTo(self);
|
||||||
|
make.width.mas_lessThanOrEqualTo(kGetScaleWidth(78));
|
||||||
}];
|
}];
|
||||||
[self.mewGiftImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
[self.mewGiftImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
make.leading.equalTo(self.mewGiftView.mas_trailing).mas_offset(kGetScaleWidth(2));
|
make.leading.equalTo(self.mewGiftView.mas_trailing).mas_offset(kGetScaleWidth(2));
|
||||||
|
@@ -0,0 +1,35 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendHeadView.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#import "MewMainHomeMenuInfoModel.h"
|
||||||
|
#import "MewMainHomeGameTabModel.h"
|
||||||
|
|
||||||
|
typedef enum : NSUInteger {
|
||||||
|
MewMainHomeMakeFriendHeadViewTyep_Game_Select,
|
||||||
|
MewMainHomeMakeFriendHeadViewTyep_Game_No_Select,
|
||||||
|
MewMainHomeMakeFriendHeadViewTyep_Change,
|
||||||
|
MewMainHomeMakeFriendHeadViewTyep_Sex,
|
||||||
|
} MewMainHomeMakeFriendHeadViewType;
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
@protocol MewMainHomeMakeFriendHeadViewDelegate <NSObject>
|
||||||
|
///大神带飞
|
||||||
|
-(void)mew_selectGodFlightAction:(MewMainHomeMenuInfoModel *_Nullable)menuInfo;
|
||||||
|
///一键匹配
|
||||||
|
-(void)mew_selectOneClickMatchingAction:(MewMainHomeMenuInfoModel *_Nullable)menuInfo;
|
||||||
|
///选择游戏
|
||||||
|
-(void)mew_selectGameFriendAction:(MewMainHomeGameTabModel *_Nullable)gameInfo type:(MewMainHomeMakeFriendHeadViewType)type sender:(UILabel *_Nullable)sender;
|
||||||
|
@end
|
||||||
|
@interface MewMainHomeMakeFriendHeadView : UICollectionReusableView
|
||||||
|
@property(nonatomic,assign) BOOL isNoChooseSex;
|
||||||
|
@property(nonatomic,strong) NSMutableArray *mewGameList;
|
||||||
|
@property(nonatomic,strong) MewMainHomeMenuInfoModel *mewMeunInfo;
|
||||||
|
@property(nonatomic,weak) id<MewMainHomeMakeFriendHeadViewDelegate>delegate;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,306 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMakeFriendHeadView.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/22.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMakeFriendHeadView.h"
|
||||||
|
#import "MewMainHomeMakeFriendHeadCell.h"
|
||||||
|
@interface MewMainHomeMakeFriendHeadView()<UICollectionViewDelegate,UICollectionViewDataSource>
|
||||||
|
///大神带飞
|
||||||
|
@property(nonatomic,strong) NetImageView *mewMahoganyView;
|
||||||
|
///一键匹配
|
||||||
|
@property(nonatomic,strong) NetImageView *mewMatchingView;
|
||||||
|
@property(nonatomic,strong) UICollectionView *mewCollectionView;
|
||||||
|
|
||||||
|
///换一换
|
||||||
|
@property(nonatomic,strong) UIView *mewChangeBGView;
|
||||||
|
@property(nonatomic,strong) UILabel *mewChangeTextView;
|
||||||
|
@property(nonatomic,strong) UIImageView *mewChangeImage;
|
||||||
|
@property(nonatomic,strong) UIButton *mewChangeBtn;
|
||||||
|
|
||||||
|
//选择
|
||||||
|
@property(nonatomic,strong) UIView *mewSelecteBGView;
|
||||||
|
@property(nonatomic,strong) UILabel *mewSelecteTextView;
|
||||||
|
@property(nonatomic,strong) UIButton *mewSelecteBtn;
|
||||||
|
@property(nonatomic,strong) UIImageView *mewSelecteImage;
|
||||||
|
@property(nonatomic,strong) UILabel *mewTitleView;
|
||||||
|
@end
|
||||||
|
@implementation MewMainHomeMakeFriendHeadView
|
||||||
|
-(instancetype)initWithFrame:(CGRect)frame{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if(self){
|
||||||
|
[self installUI];
|
||||||
|
[self installConstraints];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
-(void)installUI{
|
||||||
|
self.backgroundColor = [UIColor clearColor];
|
||||||
|
[self addSubview:self.mewMahoganyView];
|
||||||
|
[self addSubview:self.mewMatchingView];
|
||||||
|
[self addSubview:self.mewCollectionView];
|
||||||
|
[self addSubview:self.mewTitleView];
|
||||||
|
[self addSubview:self.mewChangeBGView];
|
||||||
|
[self addSubview:self.mewSelecteBGView];
|
||||||
|
[self.mewChangeBGView addSubview:self.mewChangeTextView];
|
||||||
|
[self.mewChangeBGView addSubview:self.mewChangeImage];
|
||||||
|
[self.mewChangeBGView addSubview:self.mewChangeBtn];
|
||||||
|
[self.mewSelecteBGView addSubview:self.mewSelecteTextView];
|
||||||
|
[self.mewSelecteBGView addSubview:self.mewSelecteImage];
|
||||||
|
[self.mewSelecteBGView addSubview:self.mewSelecteBtn];
|
||||||
|
}
|
||||||
|
-(void)installConstraints{
|
||||||
|
[self.mewMahoganyView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(15));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(10));
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(171));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(68));
|
||||||
|
}];
|
||||||
|
[self.mewMatchingView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(15));
|
||||||
|
make.top.mas_equalTo(kGetScaleWidth(10));
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(171));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(68));
|
||||||
|
}];
|
||||||
|
[self.mewCollectionView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.trailing.equalTo(self).inset(kGetScaleWidth(0));
|
||||||
|
make.top.equalTo(self.mewMahoganyView.mas_bottom).mas_offset(kGetScaleWidth(6));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(69));
|
||||||
|
}];
|
||||||
|
[self.mewTitleView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.top.equalTo(self.mewCollectionView.mas_bottom).mas_offset(kGetScaleWidth(20));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(22));
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(18));
|
||||||
|
}];
|
||||||
|
[self.mewSelecteBGView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(15));
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(52));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(22));
|
||||||
|
make.top.equalTo(self.mewCollectionView.mas_bottom).mas_offset(kGetScaleWidth(20));
|
||||||
|
}];
|
||||||
|
[self.mewChangeBGView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(73));
|
||||||
|
make.width.mas_equalTo(kGetScaleWidth(64));
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(22));
|
||||||
|
make.top.equalTo(self.mewCollectionView.mas_bottom).mas_offset(kGetScaleWidth(20));
|
||||||
|
}];
|
||||||
|
|
||||||
|
[self.mewSelecteImage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(14));
|
||||||
|
make.centerY.equalTo(self.mewSelecteBGView);
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(7));
|
||||||
|
}];
|
||||||
|
[self.mewSelecteTextView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.centerY.equalTo(self.mewSelecteBGView);
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(22));
|
||||||
|
}];
|
||||||
|
[self.mewSelecteBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.mewSelecteBGView);
|
||||||
|
}];
|
||||||
|
[self.mewChangeImage mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.width.height.mas_equalTo(kGetScaleWidth(14));
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(7));
|
||||||
|
make.centerY.equalTo(self.mewChangeBGView);
|
||||||
|
}];
|
||||||
|
[self.mewChangeTextView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.centerY.equalTo(self.mewChangeBGView);
|
||||||
|
make.trailing.mas_equalTo(-kGetScaleWidth(22));
|
||||||
|
}];
|
||||||
|
[self.mewChangeBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.mewChangeBGView);
|
||||||
|
}];
|
||||||
|
|
||||||
|
}
|
||||||
|
-(void)setMewMeunInfo:(MewMainHomeMenuInfoModel *)mewMeunInfo{
|
||||||
|
_mewMeunInfo = mewMeunInfo;
|
||||||
|
_mewMahoganyView.image = nil;
|
||||||
|
[_mewMahoganyView loadImageWithUrl:_mewMeunInfo.icon completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
|
||||||
|
self.mewMahoganyView.image = image;
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
-(void)setMewGameList:(NSMutableArray *)mewGameList{
|
||||||
|
_mewGameList = mewGameList;
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
}
|
||||||
|
#pragma mark- UICollectionViewDelegate,UICollectionViewDataSource
|
||||||
|
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
|
||||||
|
return self.mewGameList.count;
|
||||||
|
}
|
||||||
|
-(__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
|
MewMainHomeMakeFriendHeadCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendHeadCell class]) forIndexPath:indexPath];
|
||||||
|
cell.tabModel = [self.mewGameList safeObjectAtIndex1:indexPath.row];
|
||||||
|
return cell;
|
||||||
|
}
|
||||||
|
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
|
MewMainHomeGameTabModel *tapModel = [self.mewGameList safeObjectAtIndex1:indexPath.row];
|
||||||
|
if(tapModel.isOnClick == YES){
|
||||||
|
tapModel.isOnClick = NO;
|
||||||
|
}else{
|
||||||
|
for (MewMainHomeGameTabModel *obj in self.mewGameList) {
|
||||||
|
obj.isOnClick = NO;
|
||||||
|
}
|
||||||
|
tapModel.isOnClick = YES;
|
||||||
|
}
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
MewMainHomeMakeFriendHeadViewType type = type = tapModel.isOnClick == YES ? MewMainHomeMakeFriendHeadViewTyep_Game_Select: MewMainHomeMakeFriendHeadViewTyep_Game_No_Select;
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_selectGameFriendAction:type:sender:)]){
|
||||||
|
[self.delegate mew_selectGameFriendAction:tapModel type:type sender:nil];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-(void)mew_clickMahoganyAction{
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_selectGodFlightAction:)]){
|
||||||
|
[self.delegate mew_selectGodFlightAction:self.mewMeunInfo];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-(void)mew_clickMatchingAction{
|
||||||
|
MewMainHomeMenuInfoModel *infoModel = [MewMainHomeMenuInfoModel new];
|
||||||
|
infoModel.isOneClickMatching = YES;
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_selectOneClickMatchingAction:)]){
|
||||||
|
[self.delegate mew_selectOneClickMatchingAction:infoModel];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-(void)setIsNoChooseSex:(BOOL)isNoChooseSex{
|
||||||
|
_isNoChooseSex = isNoChooseSex;
|
||||||
|
self.mewSelecteBtn.selected = !self.mewSelecteBtn.selected;
|
||||||
|
if(self.mewSelecteBtn.selected){
|
||||||
|
self.mewSelecteImage.transform = CGAffineTransformMakeRotation(M_PI);
|
||||||
|
}else{
|
||||||
|
self.mewSelecteImage.transform = CGAffineTransformIdentity;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-(void)mew_clickChangeBtnAction{
|
||||||
|
[UIView animateWithDuration:0.5 animations:^{
|
||||||
|
self.mewChangeImage.transform = CGAffineTransformMakeRotation(M_PI);
|
||||||
|
}completion:^(BOOL finished) {
|
||||||
|
self.mewChangeImage.transform = CGAffineTransformIdentity;
|
||||||
|
}];
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_selectGameFriendAction:type:sender:)]){
|
||||||
|
[self.delegate mew_selectGameFriendAction:nil type:MewMainHomeMakeFriendHeadViewTyep_Change sender:nil];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
-(void)mew_clickSelecteBtnAction{
|
||||||
|
self.mewSelecteBtn.selected = !self.mewSelecteBtn.selected;
|
||||||
|
if(self.mewSelecteBtn.selected){
|
||||||
|
self.mewSelecteImage.transform = CGAffineTransformMakeRotation(M_PI);
|
||||||
|
}else{
|
||||||
|
self.mewSelecteImage.transform = CGAffineTransformIdentity;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_selectGameFriendAction:type:sender:)]){
|
||||||
|
[self.delegate mew_selectGameFriendAction:nil type:MewMainHomeMakeFriendHeadViewTyep_Sex sender:self.mewSelecteTextView];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#pragma mark - 懒加载
|
||||||
|
- (NetImageView *)mewMahoganyView{
|
||||||
|
if(!_mewMahoganyView){
|
||||||
|
NetImageConfig *config = [NetImageConfig new];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_mewMahoganyView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
_mewMahoganyView.contentMode = UIViewContentModeScaleAspectFill;
|
||||||
|
_mewMahoganyView.clipsToBounds = YES ;
|
||||||
|
_mewMahoganyView.layer.cornerRadius = kGetScaleWidth(10);
|
||||||
|
_mewMahoganyView.layer.masksToBounds = YES;
|
||||||
|
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(mew_clickMahoganyAction)];
|
||||||
|
_mewMahoganyView.userInteractionEnabled = YES;
|
||||||
|
[_mewMahoganyView addGestureRecognizer:tap];
|
||||||
|
}
|
||||||
|
return _mewMahoganyView;
|
||||||
|
}
|
||||||
|
- (NetImageView *)mewMatchingView{
|
||||||
|
if(!_mewMatchingView){
|
||||||
|
NetImageConfig *config = [NetImageConfig new];
|
||||||
|
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
|
||||||
|
_mewMatchingView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
_mewMatchingView.image = kImage(@"mew_main_home_friend_head_matching");
|
||||||
|
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(mew_clickMatchingAction)];
|
||||||
|
_mewMatchingView.userInteractionEnabled = YES;
|
||||||
|
[_mewMatchingView addGestureRecognizer:tap];
|
||||||
|
}
|
||||||
|
return _mewMatchingView;
|
||||||
|
}
|
||||||
|
- (UICollectionView *)mewCollectionView{
|
||||||
|
if(!_mewCollectionView){
|
||||||
|
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];
|
||||||
|
layout.itemSize = CGSizeMake(kGetScaleWidth(86), kGetScaleWidth(69));
|
||||||
|
layout.sectionInset = UIEdgeInsetsMake(0, kGetScaleWidth(12), 0, kGetScaleWidth(12));
|
||||||
|
layout.minimumLineSpacing = 0;
|
||||||
|
layout.minimumInteritemSpacing = 0;
|
||||||
|
_mewCollectionView = [[UICollectionView alloc]initWithFrame:CGRectZero collectionViewLayout:layout];
|
||||||
|
_mewCollectionView.delegate = self;
|
||||||
|
_mewCollectionView.dataSource = self;
|
||||||
|
_mewCollectionView.backgroundColor = [UIColor clearColor];
|
||||||
|
[_mewCollectionView registerClass:[MewMainHomeMakeFriendHeadCell class] forCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendHeadCell class])];
|
||||||
|
}
|
||||||
|
return _mewCollectionView;
|
||||||
|
}
|
||||||
|
- (UIView *)mewChangeBGView{
|
||||||
|
if(!_mewChangeBGView){
|
||||||
|
_mewChangeBGView = [UIView new];
|
||||||
|
_mewChangeBGView.backgroundColor = UIColorRGBAlpha(0x000000, 0.06);
|
||||||
|
_mewChangeBGView.layer.cornerRadius = kGetScaleWidth(22)/2;
|
||||||
|
_mewChangeBGView.layer.masksToBounds = YES;
|
||||||
|
}
|
||||||
|
return _mewChangeBGView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewChangeTextView{
|
||||||
|
if(!_mewChangeTextView){
|
||||||
|
_mewChangeTextView = [UILabel labelInitWithText:@"换一换" font:kFontRegular(11) textColor:UIColorFromRGB(0x696D7A)];
|
||||||
|
}
|
||||||
|
return _mewChangeTextView;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (UIImageView *)mewChangeImage{
|
||||||
|
if(!_mewChangeImage){
|
||||||
|
_mewChangeImage = [UIImageView new];
|
||||||
|
_mewChangeImage.image = kImage(@"mew_main_home_friend_head_change") ;
|
||||||
|
}
|
||||||
|
return _mewChangeImage;
|
||||||
|
}
|
||||||
|
- (UIButton *)mewChangeBtn{
|
||||||
|
if(!_mewChangeBtn){
|
||||||
|
_mewChangeBtn = [UIButton new];
|
||||||
|
_mewChangeBtn.yn_acceptEventInterval = 1;
|
||||||
|
[_mewChangeBtn addTarget:self action:@selector(mew_clickChangeBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
|
|
||||||
|
}
|
||||||
|
return _mewChangeBtn;
|
||||||
|
}
|
||||||
|
- (UIView *)mewSelecteBGView{
|
||||||
|
if(!_mewSelecteBGView){
|
||||||
|
_mewSelecteBGView = [UIView new];
|
||||||
|
_mewSelecteBGView.backgroundColor = UIColorRGBAlpha(0x000000, 0.06);
|
||||||
|
_mewSelecteBGView.layer.cornerRadius = kGetScaleWidth(22)/2;
|
||||||
|
_mewSelecteBGView.layer.masksToBounds = YES;
|
||||||
|
}
|
||||||
|
return _mewSelecteBGView;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewSelecteTextView{
|
||||||
|
if(!_mewSelecteTextView){
|
||||||
|
_mewSelecteTextView = [UILabel labelInitWithText:@"全部" font:kFontRegular(11) textColor:UIColorFromRGB(0x696D7A)];
|
||||||
|
}
|
||||||
|
return _mewSelecteTextView;
|
||||||
|
}
|
||||||
|
-(UIButton *)mewSelecteBtn{
|
||||||
|
if(!_mewSelecteBtn){
|
||||||
|
_mewSelecteBtn = [UIButton new];
|
||||||
|
|
||||||
|
[ _mewSelecteBtn addTarget:self action:@selector(mew_clickSelecteBtnAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
|
}
|
||||||
|
return _mewSelecteBtn;
|
||||||
|
}
|
||||||
|
- (UIImageView *)mewSelecteImage{
|
||||||
|
if(!_mewSelecteImage){
|
||||||
|
_mewSelecteImage = [UIImageView new];
|
||||||
|
_mewSelecteImage.image = kImage(@"mew_main_home_friend_head_selecte");
|
||||||
|
}
|
||||||
|
return _mewSelecteImage;
|
||||||
|
}
|
||||||
|
- (UILabel *)mewTitleView{
|
||||||
|
if(!_mewTitleView){
|
||||||
|
_mewTitleView = [UILabel labelInitWithText:@"玩伴推荐" font:kFontMedium(16) textColor:UIColorFromRGB(0x2B2D33)];
|
||||||
|
}
|
||||||
|
return _mewTitleView;
|
||||||
|
}
|
||||||
|
@end
|
@@ -0,0 +1,22 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameHeadView.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import <UIKit/UIKit.h>
|
||||||
|
#import "MewMainHomeLittleGameInfoModel.h"
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
@protocol MewMainHomeMoreGameHeadViewDelegate <NSObject>
|
||||||
|
///选择游戏
|
||||||
|
-(void)mew_selectGameAction:(MewMainHomeLittleGameInfoModel *_Nullable)gameInfo;
|
||||||
|
|
||||||
|
@end
|
||||||
|
@interface MewMainHomeMoreGameHeadView : UICollectionReusableView
|
||||||
|
@property(nonatomic,strong) NSMutableArray *mewGameList;
|
||||||
|
@property(nonatomic,weak) id<MewMainHomeMoreGameHeadViewDelegate>delegate;
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
@@ -0,0 +1,71 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameHeadView.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMoreGameHeadView.h"
|
||||||
|
#import "MewMainHomeMoreGameHeadCell.h"
|
||||||
|
@interface MewMainHomeMoreGameHeadView()<UICollectionViewDelegate,UICollectionViewDataSource>
|
||||||
|
@property(nonatomic,strong) UICollectionView *mewCollectionView;
|
||||||
|
|
||||||
|
@end
|
||||||
|
@implementation MewMainHomeMoreGameHeadView
|
||||||
|
|
||||||
|
-(instancetype)initWithFrame:(CGRect)frame{
|
||||||
|
self = [super initWithFrame:frame];
|
||||||
|
if(self){
|
||||||
|
[self installUI];
|
||||||
|
[self installConstraints];
|
||||||
|
}
|
||||||
|
return self;
|
||||||
|
}
|
||||||
|
-(void)installUI{
|
||||||
|
[self addSubview:self.mewCollectionView];
|
||||||
|
}
|
||||||
|
-(void)installConstraints{
|
||||||
|
[self.mewCollectionView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
-(void)setMewGameList:(NSMutableArray *)mewGameList{
|
||||||
|
_mewGameList = mewGameList;
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
}
|
||||||
|
#pragma mark- UICollectionViewDelegate,UICollectionViewDataSource
|
||||||
|
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{
|
||||||
|
return self.mewGameList.count;
|
||||||
|
}
|
||||||
|
-(__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
|
MewMainHomeMoreGameHeadCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMoreGameHeadCell class]) forIndexPath:indexPath];
|
||||||
|
cell.gameModel = [self.mewGameList safeObjectAtIndex1:indexPath.row];
|
||||||
|
return cell;
|
||||||
|
}
|
||||||
|
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
|
MewMainHomeLittleGameInfoModel *model = [self.mewGameList safeObjectAtIndex1:indexPath.row];
|
||||||
|
if(model && self.delegate && [self.delegate respondsToSelector:@selector(mew_selectGameAction:)]){
|
||||||
|
[self.delegate mew_selectGameAction:model];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#pragma mark - 懒加载
|
||||||
|
- (UICollectionView *)mewCollectionView{
|
||||||
|
if(!_mewCollectionView){
|
||||||
|
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];
|
||||||
|
layout.itemSize = CGSizeMake(kGetScaleWidth(82), kGetScaleWidth(67));
|
||||||
|
layout.sectionInset = UIEdgeInsetsMake(0, kGetScaleWidth(10), 0, kGetScaleWidth(10));
|
||||||
|
layout.minimumLineSpacing = kGetScaleWidth(5);
|
||||||
|
layout.minimumInteritemSpacing = kGetScaleWidth(5);
|
||||||
|
layout.scrollDirection = UICollectionViewScrollDirectionHorizontal;
|
||||||
|
|
||||||
|
_mewCollectionView = [[UICollectionView alloc]initWithFrame:CGRectZero collectionViewLayout:layout];
|
||||||
|
_mewCollectionView.delegate = self;
|
||||||
|
_mewCollectionView.dataSource = self;
|
||||||
|
_mewCollectionView.showsVerticalScrollIndicator = NO;
|
||||||
|
_mewCollectionView.showsHorizontalScrollIndicator = NO;
|
||||||
|
_mewCollectionView.backgroundColor = [UIColor clearColor];
|
||||||
|
[_mewCollectionView registerClass:[MewMainHomeMoreGameHeadCell class] forCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMoreGameHeadCell class])];
|
||||||
|
}
|
||||||
|
return _mewCollectionView;
|
||||||
|
}
|
||||||
|
@end
|
@@ -29,6 +29,7 @@
|
|||||||
NetImageConfig *config = [[NetImageConfig alloc]init];
|
NetImageConfig *config = [[NetImageConfig alloc]init];
|
||||||
config.placeHolder = [UIImageConstant defalutBannerPlaceholder];
|
config.placeHolder = [UIImageConstant defalutBannerPlaceholder];
|
||||||
NetImageView *imageView = [[NetImageView alloc]initWithConfig:config];
|
NetImageView *imageView = [[NetImageView alloc]initWithConfig:config];
|
||||||
|
imageView.backgroundColor = [UIColor clearColor];
|
||||||
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(clickBtnAction:)];
|
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@selector(clickBtnAction:)];
|
||||||
[imageView addGestureRecognizer:tap];
|
[imageView addGestureRecognizer:tap];
|
||||||
imageView.userInteractionEnabled = YES;
|
imageView.userInteractionEnabled = YES;
|
||||||
|
@@ -6,31 +6,284 @@
|
|||||||
//
|
//
|
||||||
|
|
||||||
#import "MewMainHomeMakeFriendVC.h"
|
#import "MewMainHomeMakeFriendVC.h"
|
||||||
|
#import "XPHomeListEmptyCollectionViewCell.h"
|
||||||
@interface MewMainHomeMakeFriendVC ()
|
#import "MewMainHomeMakeFriendHeadView.h"
|
||||||
|
#import "MewHomeManager.h"
|
||||||
|
#import "MewMainHomeProtocol.h"
|
||||||
|
#import "MewMainHomeMenuInfoModel.h"
|
||||||
|
#import "MewMainHomeMakeFriendCell.h"
|
||||||
|
#import "XPWebViewController.h"
|
||||||
|
#import "Api+MewHomeApi.h"
|
||||||
|
#import "MewMainHomeMenuDataModel.h"
|
||||||
|
#import "XPRoomViewController.h"
|
||||||
|
#import "RoomInfoModel.h"
|
||||||
|
#import "Api+Room.h"
|
||||||
|
#import "XPLittleGameRoomOpenView.h"
|
||||||
|
#import "XPHomeRecommendOtherRoomView.h"
|
||||||
|
#import "SessionViewController.h"
|
||||||
|
#import "XPNewHomeFilterView.h"
|
||||||
|
#import "CountDownHelper.h"
|
||||||
|
#import "XPSkillCardPlayerManager.h"
|
||||||
|
#import "UploadFile.h"
|
||||||
|
#import "XPMineUserInfoViewController.h"
|
||||||
|
#import "MewMainHomeMakeFriendEmptyCell.h"
|
||||||
|
@interface MewMainHomeMakeFriendVC ()<MewMainHomeMakeFriendHeadViewDelegate,UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout,XPHomeRecommendOtherRoomViewDelegate,MewMainHomeMakeFriendCellDelegate,CountDownHelperDelegate>
|
||||||
@property(nonatomic,strong) UICollectionView *mewCollectionView;
|
@property(nonatomic,strong) UICollectionView *mewCollectionView;
|
||||||
|
@property(nonatomic,strong) NSMutableArray *mewFriendList;
|
||||||
|
@property(nonatomic,strong) NSMutableArray *mewRecommendList;
|
||||||
|
|
||||||
|
|
||||||
|
@property(nonatomic,strong) NSMutableArray *mewTabList;
|
||||||
@property (nonatomic, copy) void(^scrollCallback)(UIScrollView *scrollView);
|
@property (nonatomic, copy) void(^scrollCallback)(UIScrollView *scrollView);
|
||||||
|
@property(nonatomic,strong) MewMainHomeMenuInfoModel *mewMenuInfo;
|
||||||
|
@property(nonatomic,strong) MewMainHomeMakeFriendCell *mewPlayCell;
|
||||||
|
@property(nonatomic,copy) NSString *gameId;
|
||||||
|
///筛选下标
|
||||||
|
@property (nonatomic, assign) NSInteger mewIndex;
|
||||||
|
@property(nonatomic,assign) BOOL isNoChooseSex;
|
||||||
|
///性别
|
||||||
|
@property (nonatomic,strong) NSString *mewSex;
|
||||||
|
@property(nonatomic,strong) CountDownHelper *mewDownHelper;
|
||||||
|
|
||||||
@end
|
@end
|
||||||
|
|
||||||
@implementation MewMainHomeMakeFriendVC
|
@implementation MewMainHomeMakeFriendVC
|
||||||
|
@synthesize parentMode = _parentMode;
|
||||||
|
- (MewHomeManager *)createPresenter {
|
||||||
|
return [[MewHomeManager alloc] init];
|
||||||
|
}
|
||||||
- (BOOL)isHiddenNavBar {
|
- (BOOL)isHiddenNavBar {
|
||||||
return YES;
|
return YES;
|
||||||
|
}
|
||||||
|
-(void)viewDidDisappear:(BOOL)animated{
|
||||||
|
[super viewDidAppear:animated];
|
||||||
|
[self.mewDownHelper stopCountDown];
|
||||||
|
[[XPSkillCardPlayerManager shareInstance] stopMusic];
|
||||||
|
if(self.mewPlayCell != nil){
|
||||||
|
[self.mewPlayCell mew_setPlayVoiceStatus:NO];
|
||||||
|
self.mewPlayCell = nil;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
- (void)viewDidLoad {
|
- (void)viewDidLoad {
|
||||||
[super viewDidLoad];
|
[super viewDidLoad];
|
||||||
self.view.backgroundColor = [UIColor clearColor];
|
self.view.backgroundColor = [UIColor clearColor];
|
||||||
[self installUI];
|
[self installUI];
|
||||||
[self installConstraints];
|
[self installConstraints];
|
||||||
|
[self headerRefresh];
|
||||||
}
|
}
|
||||||
-(void)installUI{
|
-(void)installUI{
|
||||||
|
[self.view addSubview:self.mewCollectionView];
|
||||||
}
|
}
|
||||||
-(void)installConstraints{
|
-(void)installConstraints{
|
||||||
|
[self.mewCollectionView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.edges.equalTo(self.view);
|
||||||
|
}];
|
||||||
}
|
}
|
||||||
- (void)headerRefresh{
|
- (void)headerRefresh{
|
||||||
|
if (_parentMode) return;
|
||||||
|
if(self.mewPlayCell != nil){
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_RefreshDataSucceed:)]){
|
||||||
|
[self.delegate mew_RefreshDataSucceed:self];
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
[self.presenter mew_requestMainHomeTopDataList];
|
||||||
|
[self.presenter mew_requsetMainHomeGameTabList];
|
||||||
|
[self.presenter mew_requestMainHomeNewFriendListWithGender:self.mewSex gameId:self.gameId];
|
||||||
|
[self.presenter mew_RequestMainHomeFriendMahoganyList];
|
||||||
|
}
|
||||||
|
/// 刷新数据,可见时才调用
|
||||||
|
- (void)mew_RefreshFriendListData {
|
||||||
|
if (self.isViewLoaded && self.view.window) {
|
||||||
|
[self.presenter mew_requestMainHomeNewFriendListWithGender:self.mewSex gameId:self.gameId];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#pragma mark- MewMainHomeProtocol
|
||||||
|
///获取首页轮播图列表成功
|
||||||
|
-(void)mew_getHomeTopDataSuccess:(NSArray *)menuList{
|
||||||
|
for (MewMainHomeMenuInfoModel *obj in menuList) {
|
||||||
|
if(obj.posSeq == 5){
|
||||||
|
self.mewMenuInfo = obj;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(self.mewMenuInfo == nil)return;
|
||||||
|
if(self.mewPlayCell == nil){
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
///获取首页轮播图列表失败
|
||||||
|
-(void)mew_getHomeTopDataFail{
|
||||||
|
|
||||||
|
}
|
||||||
|
/// 发现新朋友成功
|
||||||
|
-(void)mew_getNewFriendListSuccess:(NSArray *)list gameId:(nullable NSString *)gameId{
|
||||||
|
[self hideHUD];
|
||||||
|
self.mewFriendList = [[NSMutableArray alloc]initWithArray:list];
|
||||||
|
if(self.mewPlayCell == nil){
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
}
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_RefreshDataSucceed:)]){
|
||||||
|
[self.delegate mew_RefreshDataSucceed:self];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// 发现新朋友失败
|
||||||
|
-(void)mew_getNewFriendListFailWithGameId:(nullable NSString *)gameId{
|
||||||
|
[self hideHUD];
|
||||||
|
if(self.delegate && [self.delegate respondsToSelector:@selector(mew_RefreshDataSucceed:)]){
|
||||||
|
[self.delegate mew_RefreshDataSucceed:self];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
///大神推荐
|
||||||
|
-(void)mew_RequestMainHomeFriendMahoganyListSuccess:(NSArray *)list{
|
||||||
|
self.mewRecommendList = [NSMutableArray arrayWithArray:list];
|
||||||
|
}
|
||||||
|
///首页游戏点单分类
|
||||||
|
-(void)mew_getMainHomeGameTabList:(NSArray *)list{
|
||||||
|
if(self.mewTabList.count == 0){
|
||||||
|
self.mewTabList = [NSMutableArray arrayWithArray:list];
|
||||||
|
}else{
|
||||||
|
MewMainHomeGameTabModel *tabModel;
|
||||||
|
for (MewMainHomeGameTabModel *obj in self.mewTabList) {
|
||||||
|
if(obj.isOnClick == YES){
|
||||||
|
tabModel = obj;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if(tabModel){
|
||||||
|
for (MewMainHomeGameTabModel *obj in list) {
|
||||||
|
if([obj.gameId isEqualToString:tabModel.gameId]){
|
||||||
|
obj.isOnClick = tabModel.isOnClick;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
self.mewTabList = [NSMutableArray arrayWithArray:list];
|
||||||
|
}
|
||||||
|
|
||||||
|
if(self.mewPlayCell == nil){
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
////// 一键匹配成功
|
||||||
|
-(void)mew_getMainHomeFriendChatPickDataSuccess:(NSString *)uid{
|
||||||
|
/// 跳聊天
|
||||||
|
NSString *sessionId = uid;
|
||||||
|
NIMSession *session = [NIMSession session:sessionId type:NIMSessionTypeP2P];
|
||||||
|
SessionViewController *sessionVC = [[SessionViewController alloc] initWithSession:session];
|
||||||
|
sessionVC.isNOAstrictChat = YES;
|
||||||
|
[self.navigationController pushViewController:sessionVC animated:YES];
|
||||||
|
}
|
||||||
|
////// 一键匹配失败
|
||||||
|
-(void)mew_getMainHomeFriendChatPickDataFail:(NSString *)msg{
|
||||||
|
|
||||||
|
}
|
||||||
|
#pragma mark - MewMainHomeMakeFriendHeadViewDelegate
|
||||||
|
///大神带飞
|
||||||
|
-(void)mew_selectGodFlightAction:(MewMainHomeMenuInfoModel *_Nullable)menuInfo{
|
||||||
|
if (menuInfo.resourceType == MewMainHomeMenuInfoModelType_H5) {
|
||||||
|
XPWebViewController * webVC = [[ XPWebViewController alloc] init];
|
||||||
|
webVC.url = menuInfo.resourceContent;
|
||||||
|
[self.navigationController pushViewController:webVC animated:YES];
|
||||||
|
}else {
|
||||||
|
NSString * uid = [AccountInfoStorage instance].getUid;
|
||||||
|
if (menuInfo.hid.length > 0 && uid.length > 0) {
|
||||||
|
[Api mew_RequestMainHomePickResource:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
|
||||||
|
if (code == 200) {
|
||||||
|
MewMainHomeMenuDataModel * sourceModel = [MewMainHomeMenuDataModel modelWithDictionary:data.data];
|
||||||
|
if (sourceModel.isPick) {
|
||||||
|
if([sourceModel.uid isEqualToString:[AccountInfoStorage instance].getUid]){
|
||||||
|
[self mew_clickMyRoom:sourceModel.uid];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (sourceModel.uid.integerValue > 0) {
|
||||||
|
[XPRoomViewController openRoom:sourceModel.uid fromNick:nil fromType:UserEnterRoomFromType_Home_Recommend fromUid:nil viewController:self];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
XPHomeRecommendOtherRoomView * recommendView = [[XPHomeRecommendOtherRoomView alloc] init];
|
||||||
|
recommendView.delegate = self;
|
||||||
|
recommendView.roomInfo = sourceModel;
|
||||||
|
[TTPopup popupView:recommendView style:TTPopupStyleAlert];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
[XCHUDTool showErrorWithMessage:msg];
|
||||||
|
}
|
||||||
|
} uid:uid rid:menuInfo.hid type:@"0"];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
///一键匹配
|
||||||
|
-(void)mew_selectOneClickMatchingAction:(MewMainHomeMenuInfoModel *_Nullable)menuInfo{
|
||||||
|
[self.presenter mew_getMainHomeFriendChatPickData];
|
||||||
|
}
|
||||||
|
///选择游戏
|
||||||
|
-(void)mew_selectGameFriendAction:(MewMainHomeGameTabModel *_Nullable)gameInfo type:(MewMainHomeMakeFriendHeadViewType)type sender:(UILabel *_Nullable)sender{
|
||||||
|
if(type == MewMainHomeMakeFriendHeadViewTyep_Change){
|
||||||
|
[self mew_RefreshFriendListData];
|
||||||
|
}else if (type == MewMainHomeMakeFriendHeadViewTyep_Sex){
|
||||||
|
XPNewHomeFilterView *filterView = [[XPNewHomeFilterView alloc] init];
|
||||||
|
@kWeakify(self);
|
||||||
|
@kWeakify(sender);
|
||||||
|
|
||||||
|
filterView.selectBlock = ^(NSString *gender, NSString *title, NSInteger index) {
|
||||||
|
@kStrongify(self);
|
||||||
|
@kStrongify(sender);
|
||||||
|
if(index == 404){
|
||||||
|
self.isNoChooseSex = YES;
|
||||||
|
if(self.mewPlayCell == nil){
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
}
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
sender.text = title;
|
||||||
|
// 刷新列表
|
||||||
|
self.mewSex = gender;
|
||||||
|
self.mewIndex = index;
|
||||||
|
[self mew_RefreshFriendListData];
|
||||||
|
};
|
||||||
|
[filterView addToVCView:self.view targetView:sender selectedIndex:self.mewIndex];
|
||||||
|
}else if (type == MewMainHomeMakeFriendHeadViewTyep_Game_Select){
|
||||||
|
[self showLoading];
|
||||||
|
self.gameId = gameInfo.gameId;
|
||||||
|
[self.presenter mew_requestMainHomeNewFriendListWithGender:self.mewSex gameId:gameInfo.gameId];
|
||||||
|
}else{
|
||||||
|
[self showLoading];
|
||||||
|
self.gameId = nil;
|
||||||
|
[self.presenter mew_requestMainHomeNewFriendListWithGender:self.mewSex gameId:self.gameId];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
///点击了我的房间
|
||||||
|
- (void)mew_clickMyRoom:(NSString *)roomUid{
|
||||||
|
|
||||||
|
[Api getRoomInfo:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
|
||||||
|
if (code == 200) {
|
||||||
|
RoomInfoModel * roomInfo = [RoomInfoModel modelWithJSON:data.data];
|
||||||
|
if (roomInfo.isReselect) {
|
||||||
|
XPLittleGameRoomOpenView * roomOpenView = [[XPLittleGameRoomOpenView alloc] init];
|
||||||
|
roomOpenView.roomInfo = roomInfo;
|
||||||
|
roomOpenView.currentVC = self;
|
||||||
|
[TTPopup popupView:roomOpenView style:TTPopupStyleActionSheet];
|
||||||
|
} else {
|
||||||
|
[XPRoomViewController openRoom:roomUid viewController:self];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
[self showErrorToast:msg];
|
||||||
|
}
|
||||||
|
} uid:roomUid intoUid:roomUid];
|
||||||
|
}
|
||||||
|
#pragma mark - XPHomeRecommendOtherRoomViewDelegate
|
||||||
|
- (void)xPHomeRecommendOtherRoomView:(XPHomeRecommendOtherRoomView *)view didClickEnterRoom:(MewMainHomeMenuDataModel *)model {
|
||||||
|
if (model.uid.integerValue > 0) {
|
||||||
|
if([model.uid isEqualToString:[AccountInfoStorage instance].getUid]){
|
||||||
|
[self mew_clickMyRoom:model.uid];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
[XPRoomViewController openRoom:model.uid fromNick:nil fromType:UserEnterRoomFromType_Home_Recommend fromUid:nil viewController:self];
|
||||||
|
}
|
||||||
|
}
|
||||||
#pragma mark - JXPagingViewListViewDelegate
|
#pragma mark - JXPagingViewListViewDelegate
|
||||||
- (UIView *)listView {
|
- (UIView *)listView {
|
||||||
return self.view;
|
return self.view;
|
||||||
@@ -45,10 +298,204 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
|
- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
|
||||||
|
if(self.mewPlayCell != nil){
|
||||||
|
BOOL isVisible = YES;
|
||||||
|
|
||||||
|
|
||||||
|
CGRect cellR = [self.mewCollectionView convertRect:self.mewPlayCell.frame toView:self.mewCollectionView];
|
||||||
|
if((self.mewCollectionView.contentOffset.y - (cellR.origin.y)) > cellR.size.height){
|
||||||
|
isVisible = NO;
|
||||||
|
}
|
||||||
|
if (cellR.origin.y - self.mewCollectionView.contentOffset.y > self.mewCollectionView.frame.size.height) {//下滑的情况
|
||||||
|
isVisible = NO;
|
||||||
|
}
|
||||||
|
if(!isVisible && [self.mewPlayCell isKindOfClass:[MewMainHomeMakeFriendCell class]]) {
|
||||||
|
[self.mewDownHelper stopCountDown];
|
||||||
|
[[XPSkillCardPlayerManager shareInstance] stopMusic];
|
||||||
|
[self.mewPlayCell mew_setPlayVoiceStatus:NO];
|
||||||
|
self.mewPlayCell = nil;
|
||||||
|
}
|
||||||
|
}
|
||||||
if(self.scrollCallback){
|
if(self.scrollCallback){
|
||||||
self.scrollCallback(scrollView);
|
self.scrollCallback(scrollView);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - MewMainHomeMakeFriendCellDelegate
|
||||||
|
///点击播放声音
|
||||||
|
-(void)mew_clickPlayVoiceActionWithCell:(MewMainHomeMakeFriendCell *)cell model:(MewMainHomeMakeFriendModel *)model isPlay:(BOOL)isPlay{
|
||||||
|
if(isPlay == YES){
|
||||||
|
if(self.mewPlayCell != nil){
|
||||||
|
[self.mewDownHelper stopCountDown];
|
||||||
|
[self.mewPlayCell mew_setPlayVoiceStatus:NO];
|
||||||
|
[[XPSkillCardPlayerManager shareInstance] stopMusic];
|
||||||
|
self.mewPlayCell = nil;
|
||||||
|
}
|
||||||
|
self.mewPlayCell = cell;
|
||||||
|
|
||||||
|
|
||||||
|
NSString *fileName = [[model.playUrl componentsSeparatedByString:@"/"] lastObject];
|
||||||
|
NSString *filePath = [[NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES) safeObjectAtIndex1:0] stringByAppendingPathComponent:@"kMewMainHomeVoiceCard"];
|
||||||
|
NSString *fullPath = [filePath stringByAppendingPathComponent:fileName];
|
||||||
|
if ([[NSFileManager defaultManager] fileExistsAtPath:fullPath]) {
|
||||||
|
[self mew_setplayAudioWithUrl:fullPath ];
|
||||||
|
}else{
|
||||||
|
if (![[NSFileManager defaultManager] fileExistsAtPath:filePath]) {
|
||||||
|
NSFileManager *fileMgr = [[NSFileManager alloc] init];
|
||||||
|
[fileMgr createDirectoryAtPath:filePath withIntermediateDirectories:YES attributes:nil error:nil];
|
||||||
|
}
|
||||||
|
[UploadFile mew_downloadAudioWithFileName:fileName musicUrl:model.playUrl mainFileName:@"kMewMainHomeVoiceCard" completion:^(BOOL isSuccess, NSString *editAudioPath) {
|
||||||
|
if(isSuccess){
|
||||||
|
[self mew_setplayAudioWithUrl:editAudioPath];
|
||||||
|
|
||||||
|
}else{
|
||||||
|
[self.mewPlayCell mew_setPlayVoiceStatus:NO];
|
||||||
|
[[XPSkillCardPlayerManager shareInstance] stopMusic];
|
||||||
|
self.mewPlayCell = nil;
|
||||||
|
}
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
}else{
|
||||||
|
[self.mewDownHelper stopCountDown];
|
||||||
|
[self.mewPlayCell mew_setPlayVoiceStatus:NO];
|
||||||
|
[[XPSkillCardPlayerManager shareInstance] stopMusic];
|
||||||
|
self.mewPlayCell = nil;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
/// 播放录音
|
||||||
|
/// - Parameters:
|
||||||
|
/// - url: 录音链接
|
||||||
|
/// - isDelay: 是否延时0.5秒播放录音,因为如果在麦上的话,需要先关麦再播放,所以要延时0.5秒来关麦后再播放,不然会没声音
|
||||||
|
-(void)mew_setplayAudioWithUrl:(NSString*)url {
|
||||||
|
NSInteger getCurrentTime = ceil([self.mewPlayCell.friendModel.playTime integerValue]);
|
||||||
|
[self.mewDownHelper openCountdownWithTime:(int)getCurrentTime];
|
||||||
|
[[XPSkillCardPlayerManager shareInstance] playerVoiceWithPath:url completionBlock:^{
|
||||||
|
[[XPSkillCardPlayerManager shareInstance] stopMusic];
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
///点击房间
|
||||||
|
-(void)mew_clickRoomBtnActionWithModel:(MewMainHomeMakeFriendModel *)model{
|
||||||
|
if(model.lock == 1)return;
|
||||||
|
if (model.inRoomUid.length > 0) {
|
||||||
|
if (model.inMic) {
|
||||||
|
[XPRoomViewController openRoom:model.inRoomUid fromNick:model.nick fromType:UserEnterRoomFromType_Follow_User fromUid:[NSString stringWithFormat:@"%@",model.uid] viewController:self];
|
||||||
|
}else{
|
||||||
|
[XPRoomViewController openRoom:model.inRoomUid fromNick:nil fromType:UserEnterRoomFromType_Home_Recommend fromUid:nil viewController:self];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
///点击头像
|
||||||
|
-(void)mew_clickAvatarBtnActionWithModel:(MewMainHomeMakeFriendModel *)model{
|
||||||
|
|
||||||
|
XPMineUserInfoViewController *userInfoVC = [XPMineUserInfoViewController new];
|
||||||
|
userInfoVC.uid = [model.uid integerValue];
|
||||||
|
[self.navigationController pushViewController:userInfoVC animated:YES];
|
||||||
|
}
|
||||||
|
#pragma mark- UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout
|
||||||
|
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
|
||||||
|
if(self.gameId != nil && self.mewFriendList.count == 0){
|
||||||
|
return self.mewRecommendList.count + 1;
|
||||||
|
}
|
||||||
|
return self.mewFriendList.count > 0 ? self.mewFriendList.count : 1;
|
||||||
|
}
|
||||||
|
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section{
|
||||||
|
|
||||||
|
return CGSizeMake(0, kGetScaleWidth(206));
|
||||||
|
}
|
||||||
|
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
|
if(self.gameId != nil && self.mewFriendList.count == 0){
|
||||||
|
return indexPath.row == 0 ? CGSizeMake(KScreenWidth, 255):CGSizeMake(kGetScaleWidth(168), kGetScaleWidth(184));
|
||||||
|
}
|
||||||
|
return self.mewFriendList.count == 0 ? CGSizeMake(KScreenWidth, 150):CGSizeMake(kGetScaleWidth(168), kGetScaleWidth(184));
|
||||||
|
}
|
||||||
|
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
|
||||||
|
{
|
||||||
|
if(kind == UICollectionElementKindSectionHeader){
|
||||||
|
MewMainHomeMakeFriendHeadView *headView = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader
|
||||||
|
withReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendHeadView class]) forIndexPath:indexPath];
|
||||||
|
headView.mewMeunInfo = self.mewMenuInfo;
|
||||||
|
headView.mewGameList = self.mewTabList;
|
||||||
|
headView.delegate = self;
|
||||||
|
|
||||||
|
return headView;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return nil;
|
||||||
|
}
|
||||||
|
- (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
|
||||||
|
|
||||||
|
|
||||||
|
if(self.gameId != nil && self.mewFriendList.count == 0){
|
||||||
|
if(indexPath.row == 0){
|
||||||
|
MewMainHomeMakeFriendEmptyCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendEmptyCell class]) forIndexPath:indexPath];
|
||||||
|
|
||||||
|
return cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
MewMainHomeMakeFriendCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendCell class]) forIndexPath:indexPath];
|
||||||
|
cell.friendModel = [self.mewRecommendList safeObjectAtIndex1:indexPath.row];
|
||||||
|
cell.delegate = self;
|
||||||
|
return cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
if(self.mewFriendList.count == 0){
|
||||||
|
XPHomeListEmptyCollectionViewCell * emptyCell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([XPHomeListEmptyCollectionViewCell class]) forIndexPath:indexPath];
|
||||||
|
return emptyCell;
|
||||||
|
}
|
||||||
|
MewMainHomeMakeFriendCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendCell class]) forIndexPath:indexPath];
|
||||||
|
cell.friendModel = [self.mewFriendList safeObjectAtIndex1:indexPath.row];
|
||||||
|
cell.delegate = self;
|
||||||
|
return cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
#pragma mark - CountDownHelperDelegate
|
||||||
|
///倒计时结束
|
||||||
|
- (void)onCountdownFinish{
|
||||||
|
if(self.mewPlayCell != nil){
|
||||||
|
[self.mewPlayCell mew_setPlayVoiceTime:0];
|
||||||
|
dispatch_time_t popTime = dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.3 * NSEC_PER_SEC));
|
||||||
|
dispatch_after(popTime, dispatch_get_main_queue(), ^(void){
|
||||||
|
[self.mewPlayCell mew_setPlayVoiceStatus:NO];
|
||||||
|
self.mewPlayCell = nil;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
///倒计时进行
|
||||||
|
- (void)onCountdownOpen:(int)time{
|
||||||
|
if(self.mewPlayCell != nil){
|
||||||
|
[self.mewPlayCell mew_setPlayVoiceTime:(int)time + 1];
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
#pragma mark - 懒加载
|
#pragma mark - 懒加载
|
||||||
|
- (UICollectionView *)mewCollectionView{
|
||||||
|
if(!_mewCollectionView){
|
||||||
|
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];
|
||||||
|
|
||||||
|
layout.sectionInset = UIEdgeInsetsMake(0, kGetScaleWidth(15), kGetScaleWidth(15), kGetScaleWidth(15));
|
||||||
|
layout.minimumLineSpacing = kGetScaleWidth(8);
|
||||||
|
layout.minimumInteritemSpacing = kGetScaleWidth(8);
|
||||||
|
_mewCollectionView = [[UICollectionView alloc]initWithFrame:CGRectZero collectionViewLayout:layout];
|
||||||
|
_mewCollectionView.backgroundColor = [UIColor clearColor];
|
||||||
|
_mewCollectionView.delegate = self;
|
||||||
|
_mewCollectionView.dataSource = self;
|
||||||
|
|
||||||
|
[_mewCollectionView registerClass:[XPHomeListEmptyCollectionViewCell class] forCellWithReuseIdentifier:NSStringFromClass([XPHomeListEmptyCollectionViewCell class])];
|
||||||
|
[_mewCollectionView registerClass:[MewMainHomeMakeFriendHeadView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendHeadView class])];
|
||||||
|
[_mewCollectionView registerClass:[MewMainHomeMakeFriendCell class] forCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendCell class])];
|
||||||
|
[_mewCollectionView registerClass:[MewMainHomeMakeFriendEmptyCell class] forCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMakeFriendEmptyCell class])];
|
||||||
|
|
||||||
|
}
|
||||||
|
return _mewCollectionView;
|
||||||
|
}
|
||||||
|
- (CountDownHelper *)mewDownHelper{
|
||||||
|
if(!_mewDownHelper){
|
||||||
|
_mewDownHelper = [[CountDownHelper alloc]init];
|
||||||
|
_mewDownHelper.delegate = self;
|
||||||
|
}
|
||||||
|
return _mewDownHelper;
|
||||||
|
}
|
||||||
@end
|
@end
|
||||||
|
@@ -0,0 +1,16 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameVC.h
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MvpViewController.h"
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
|
@interface MewMainHomeMoreGameVC : MvpViewController
|
||||||
|
|
||||||
|
@end
|
||||||
|
|
||||||
|
NS_ASSUME_NONNULL_END
|
218
xplan-ios/Main/Home/View/Mew/MewHomeView/MewMainHomeMoreGameVC.m
Normal file
@@ -0,0 +1,218 @@
|
|||||||
|
//
|
||||||
|
// MewMainHomeMoreGameVC.m
|
||||||
|
// xplan-ios
|
||||||
|
//
|
||||||
|
// Created by duoban on 2023/12/25.
|
||||||
|
//
|
||||||
|
|
||||||
|
#import "MewMainHomeMoreGameVC.h"
|
||||||
|
#import "MewMainHomeMoreGameCell.h"
|
||||||
|
#import "XPHomeListEmptyCollectionViewCell.h"
|
||||||
|
#import "MewMainHomeMoreGameHeadView.h"
|
||||||
|
#import "MewHomeManager.h"
|
||||||
|
#import "Api+Room.h"
|
||||||
|
#import "Api+MewHomeApi.h"
|
||||||
|
#import "MewMainHomeMenuDataModel.h"
|
||||||
|
#import "XPRoomViewController.h"
|
||||||
|
#import "XPLittleGameRoomOpenView.h"
|
||||||
|
#import "XPHomeRecommendOtherRoomView.h"
|
||||||
|
@interface MewMainHomeMoreGameVC ()<MewMainHomeMoreGameHeadViewDelegate,XPHomeRecommendOtherRoomViewDelegate,UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout>
|
||||||
|
@property(nonatomic,strong) UIButton *mewBackBtn;
|
||||||
|
@property(nonatomic,strong) UIImageView *mewBgImageView;
|
||||||
|
@property(nonatomic,strong) UICollectionView *mewCollectionView;
|
||||||
|
@property(nonatomic,strong) NSMutableArray *mewGameList;
|
||||||
|
@property(nonatomic,strong) NSMutableArray *mewRoomList;
|
||||||
|
@end
|
||||||
|
|
||||||
|
@implementation MewMainHomeMoreGameVC
|
||||||
|
- (MewHomeManager *)createPresenter {
|
||||||
|
return [[MewHomeManager alloc] init];
|
||||||
|
}
|
||||||
|
- (BOOL)isHiddenNavBar {
|
||||||
|
return YES;
|
||||||
|
}
|
||||||
|
-(void)mew_dissViewAction{
|
||||||
|
[self.navigationController popViewControllerAnimated:YES];
|
||||||
|
}
|
||||||
|
- (void)viewDidLoad {
|
||||||
|
[super viewDidLoad];
|
||||||
|
[self installUI];
|
||||||
|
[self installConstraints];
|
||||||
|
[self mew_headerRefresh];
|
||||||
|
}
|
||||||
|
-(void)installUI{
|
||||||
|
[self.view addSubview:self.mewBgImageView];
|
||||||
|
[self.view addSubview:self.mewBackBtn];
|
||||||
|
[self.view addSubview:self.mewCollectionView];
|
||||||
|
}
|
||||||
|
|
||||||
|
-(void)mew_headerRefresh{
|
||||||
|
[self.presenter mew_getMainHomeLittleGameList];
|
||||||
|
[self.presenter mew_getMainHomeGameFriendList];
|
||||||
|
}
|
||||||
|
-(void)installConstraints{
|
||||||
|
[self.mewBgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.left.top.equalTo(self.view);
|
||||||
|
make.height.mas_equalTo(kGetScaleWidth(250));
|
||||||
|
}];
|
||||||
|
[self.mewBackBtn mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.mas_equalTo(kGetScaleWidth(16));
|
||||||
|
make.width.height.mas_equalTo(18);
|
||||||
|
make.top.mas_equalTo(kStatusBarHeight+13);
|
||||||
|
}];
|
||||||
|
[self.mewCollectionView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||||
|
make.leading.trailing.bottom.equalTo(self.view);
|
||||||
|
make.top.mas_equalTo(kNavigationHeight);
|
||||||
|
}];
|
||||||
|
}
|
||||||
|
///得到小游戏列表成功
|
||||||
|
-(void)mew_getMainHomeLittleGameListSuccess:(NSArray *)list{
|
||||||
|
self.mewGameList = [NSMutableArray arrayWithArray:list];
|
||||||
|
MewMainHomeLittleGameInfoModel *gameInfo = [MewMainHomeLittleGameInfoModel new];
|
||||||
|
gameInfo.mgId = @"-9999";
|
||||||
|
[self.mewGameList addObject:gameInfo];
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
}
|
||||||
|
///获取游戏列表用户成功
|
||||||
|
-(void)mew_getMainHomeGameFriendListSuccess:(NSArray *)list{
|
||||||
|
self.mewRoomList = [NSMutableArray arrayWithArray:list];
|
||||||
|
[self.mewCollectionView reloadData];
|
||||||
|
}
|
||||||
|
#pragma mark - MewMainHomeMoreGameHeadViewDelegate
|
||||||
|
- (void)mew_selectGameAction:(MewMainHomeLittleGameInfoModel *)gameInfo{
|
||||||
|
NSString * uid = [AccountInfoStorage instance].getUid;
|
||||||
|
if (gameInfo.mgId.length > 0 && uid.length > 0) {
|
||||||
|
[Api mew_RequestMainHomePickResource:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
|
||||||
|
if (code == 200) {
|
||||||
|
MewMainHomeMenuDataModel * sourceModel = [MewMainHomeMenuDataModel modelWithDictionary:data.data];
|
||||||
|
if (sourceModel.isPick) {
|
||||||
|
if([sourceModel.uid isEqualToString:[AccountInfoStorage instance].getUid]){
|
||||||
|
[self mew_clickMyRoom:sourceModel.uid];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (sourceModel.uid.integerValue > 0) {
|
||||||
|
[XPRoomViewController openRoom:sourceModel.uid fromNick:nil fromType:UserEnterRoomFromType_Home_Recommend fromUid:nil viewController:self];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
XPHomeRecommendOtherRoomView * recommendView = [[XPHomeRecommendOtherRoomView alloc] init];
|
||||||
|
recommendView.delegate = self;
|
||||||
|
recommendView.roomInfo = sourceModel;
|
||||||
|
[TTPopup popupView:recommendView style:TTPopupStyleAlert];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
[XCHUDTool showErrorWithMessage:msg];
|
||||||
|
}
|
||||||
|
} uid:uid rid:gameInfo.mgId type:[gameInfo.mgId isEqualToString:@"-9999"] ? @"1":@"2"] ;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
#pragma mark - XPHomeRecommendOtherRoomViewDelegate
|
||||||
|
- (void)xPHomeRecommendOtherRoomView:(XPHomeRecommendOtherRoomView *)view didClickEnterRoom:(MewMainHomeMenuDataModel *)model {
|
||||||
|
if (model.uid.integerValue > 0) {
|
||||||
|
if([model.uid isEqualToString:[AccountInfoStorage instance].getUid]){
|
||||||
|
[self mew_clickMyRoom:model.uid];
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
[XPRoomViewController openRoom:model.uid fromNick:nil fromType:UserEnterRoomFromType_Home_Recommend fromUid:nil viewController:self];
|
||||||
|
}
|
||||||
|
}
|
||||||
|
///点击了我的房间
|
||||||
|
- (void)mew_clickMyRoom:(NSString *)roomUid{
|
||||||
|
|
||||||
|
[Api getRoomInfo:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
|
||||||
|
if (code == 200) {
|
||||||
|
RoomInfoModel * roomInfo = [RoomInfoModel modelWithJSON:data.data];
|
||||||
|
if (roomInfo.isReselect) {
|
||||||
|
XPLittleGameRoomOpenView * roomOpenView = [[XPLittleGameRoomOpenView alloc] init];
|
||||||
|
roomOpenView.roomInfo = roomInfo;
|
||||||
|
roomOpenView.currentVC = self;
|
||||||
|
[TTPopup popupView:roomOpenView style:TTPopupStyleActionSheet];
|
||||||
|
} else {
|
||||||
|
[XPRoomViewController openRoom:roomUid viewController:self];
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
[self showErrorToast:msg];
|
||||||
|
}
|
||||||
|
} uid:roomUid intoUid:roomUid];
|
||||||
|
}
|
||||||
|
#pragma mark - UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout
|
||||||
|
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section {
|
||||||
|
return self.mewRoomList.count > 0 ? self.mewRoomList.count : 1;
|
||||||
|
}
|
||||||
|
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout referenceSizeForHeaderInSection:(NSInteger)section{
|
||||||
|
|
||||||
|
return CGSizeMake(0, kGetScaleWidth(67));
|
||||||
|
}
|
||||||
|
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
|
return self.mewRoomList.count == 0 ? CGSizeMake(KScreenWidth, 150):CGSizeMake(kGetScaleWidth(168), kGetScaleWidth(148));
|
||||||
|
}
|
||||||
|
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
|
||||||
|
{
|
||||||
|
if(kind == UICollectionElementKindSectionHeader){
|
||||||
|
MewMainHomeMoreGameHeadView *headView = [collectionView dequeueReusableSupplementaryViewOfKind:UICollectionElementKindSectionHeader
|
||||||
|
withReuseIdentifier:NSStringFromClass([MewMainHomeMoreGameHeadView class]) forIndexPath:indexPath];
|
||||||
|
|
||||||
|
headView.mewGameList = self.mewGameList;
|
||||||
|
headView.delegate = self;
|
||||||
|
|
||||||
|
return headView;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
return nil;
|
||||||
|
}
|
||||||
|
- (__kindof UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath {
|
||||||
|
if(self.mewRoomList.count == 0){
|
||||||
|
XPHomeListEmptyCollectionViewCell * emptyCell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([XPHomeListEmptyCollectionViewCell class]) forIndexPath:indexPath];
|
||||||
|
return emptyCell;
|
||||||
|
}
|
||||||
|
MewMainHomeMoreGameCell *cell = [collectionView dequeueReusableCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMoreGameCell class]) forIndexPath:indexPath];
|
||||||
|
cell.moreGameModel = [self.mewRoomList safeObjectAtIndex1:indexPath.row];
|
||||||
|
return cell;
|
||||||
|
}
|
||||||
|
|
||||||
|
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
|
||||||
|
if(self.mewRoomList.count == 0)return;
|
||||||
|
MewMainHomeHotRoomModel *roomModel = [self.mewRoomList safeObjectAtIndex1:indexPath.row];
|
||||||
|
[XPRoomViewController openRoom:roomModel.uid viewController:self];
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
#pragma mark - 懒加载
|
||||||
|
- (UIButton *)mewBackBtn{
|
||||||
|
if(!_mewBackBtn){
|
||||||
|
_mewBackBtn = [UIButton new];
|
||||||
|
[_mewBackBtn setImage:kImage(@"mew_mainHome_more_game_back") forState:UIControlStateNormal];
|
||||||
|
[_mewBackBtn setEnlargeEdgeWithTop:10 right:10 bottom:10 left:10];
|
||||||
|
[_mewBackBtn addTarget:self action:@selector(mew_dissViewAction) forControlEvents:UIControlEventTouchUpInside];
|
||||||
|
}
|
||||||
|
return _mewBackBtn;
|
||||||
|
}
|
||||||
|
- (UICollectionView *)mewCollectionView{
|
||||||
|
if(!_mewCollectionView){
|
||||||
|
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];
|
||||||
|
|
||||||
|
layout.sectionInset = UIEdgeInsetsMake(kGetScaleWidth(16), kGetScaleWidth(15), kGetScaleWidth(15), kGetScaleWidth(15));
|
||||||
|
layout.minimumLineSpacing = kGetScaleWidth(8);
|
||||||
|
layout.minimumInteritemSpacing = kGetScaleWidth(8);
|
||||||
|
_mewCollectionView = [[UICollectionView alloc]initWithFrame:CGRectZero collectionViewLayout:layout];
|
||||||
|
_mewCollectionView.backgroundColor = [UIColor clearColor];
|
||||||
|
_mewCollectionView.delegate = self;
|
||||||
|
_mewCollectionView.dataSource = self;
|
||||||
|
|
||||||
|
[_mewCollectionView registerClass:[XPHomeListEmptyCollectionViewCell class] forCellWithReuseIdentifier:NSStringFromClass([XPHomeListEmptyCollectionViewCell class])];
|
||||||
|
[_mewCollectionView registerClass:[MewMainHomeMoreGameHeadView class] forSupplementaryViewOfKind:UICollectionElementKindSectionHeader withReuseIdentifier:NSStringFromClass([MewMainHomeMoreGameHeadView class])];
|
||||||
|
[_mewCollectionView registerClass:[MewMainHomeMoreGameCell class] forCellWithReuseIdentifier:NSStringFromClass([MewMainHomeMoreGameCell class])];
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
return _mewCollectionView;
|
||||||
|
}
|
||||||
|
- (UIImageView *)mewBgImageView{
|
||||||
|
if(!_mewBgImageView){
|
||||||
|
_mewBgImageView = [UIImageView new];
|
||||||
|
_mewBgImageView.image = kImage(@"mew_home_top_bg_image");
|
||||||
|
}
|
||||||
|
return _mewBgImageView;
|
||||||
|
}
|
||||||
|
@end
|
@@ -18,6 +18,7 @@
|
|||||||
#import "XPHomeRecommendOtherRoomView.h"
|
#import "XPHomeRecommendOtherRoomView.h"
|
||||||
#import "Api+Room.h"
|
#import "Api+Room.h"
|
||||||
#import "XPLittleGameRoomOpenView.h"
|
#import "XPLittleGameRoomOpenView.h"
|
||||||
|
#import "MewMainHomeMoreGameVC.h"
|
||||||
@interface MewMainHomePartyVC ()<UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout,MewMainHomePartyHeadViewDelegate,XPHomeRecommendOtherRoomViewDelegate>
|
@interface MewMainHomePartyVC ()<UICollectionViewDelegate,UICollectionViewDataSource,UICollectionViewDelegateFlowLayout,MewMainHomePartyHeadViewDelegate,XPHomeRecommendOtherRoomViewDelegate>
|
||||||
@property(nonatomic,strong) UICollectionView *mewCollectionView;
|
@property(nonatomic,strong) UICollectionView *mewCollectionView;
|
||||||
@property (nonatomic, copy) void(^scrollCallback)(UIScrollView *scrollView);
|
@property (nonatomic, copy) void(^scrollCallback)(UIScrollView *scrollView);
|
||||||
@@ -135,7 +136,8 @@
|
|||||||
|
|
||||||
if(info.isMorn == YES){
|
if(info.isMorn == YES){
|
||||||
|
|
||||||
|
MewMainHomeMoreGameVC *moreGameVC = [MewMainHomeMoreGameVC new];
|
||||||
|
[self.navigationController pushViewController:moreGameVC animated:YES];
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -166,7 +168,7 @@
|
|||||||
} else {
|
} else {
|
||||||
[XCHUDTool showErrorWithMessage:msg];
|
[XCHUDTool showErrorWithMessage:msg];
|
||||||
}
|
}
|
||||||
} uid:uid rid:info.hid];
|
} uid:uid rid:info.hid type:@"0"];
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -228,7 +230,7 @@
|
|||||||
return CGSizeMake(0, kGetScaleWidth(341));
|
return CGSizeMake(0, kGetScaleWidth(341));
|
||||||
}
|
}
|
||||||
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{
|
-(CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath{
|
||||||
return self.mewDataList.count == 0 ? CGSizeMake(KScreenWidth, 150):CGSizeMake(kGetScaleWidth(168), kGetScaleWidth(164));
|
return self.mewDataList.count == 0 ? CGSizeMake(KScreenWidth, 150):CGSizeMake(kGetScaleWidth(172), kGetScaleWidth(174));
|
||||||
}
|
}
|
||||||
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
|
- (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView viewForSupplementaryElementOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath
|
||||||
{
|
{
|
||||||
@@ -266,9 +268,9 @@
|
|||||||
if(!_mewCollectionView){
|
if(!_mewCollectionView){
|
||||||
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];
|
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init];
|
||||||
|
|
||||||
layout.sectionInset = UIEdgeInsetsMake(0, kGetScaleWidth(15), kGetScaleWidth(15), kGetScaleWidth(15));
|
layout.sectionInset = UIEdgeInsetsMake(0, kGetScaleWidth(11), kGetScaleWidth(15), kGetScaleWidth(11));
|
||||||
layout.minimumLineSpacing = kGetScaleWidth(8);
|
layout.minimumLineSpacing = kGetScaleWidth(8);
|
||||||
layout.minimumInteritemSpacing = kGetScaleWidth(8);
|
layout.minimumInteritemSpacing = kGetScaleWidth(4);
|
||||||
_mewCollectionView = [[UICollectionView alloc]initWithFrame:CGRectZero collectionViewLayout:layout];
|
_mewCollectionView = [[UICollectionView alloc]initWithFrame:CGRectZero collectionViewLayout:layout];
|
||||||
_mewCollectionView.backgroundColor = [UIColor clearColor];
|
_mewCollectionView.backgroundColor = [UIColor clearColor];
|
||||||
_mewCollectionView.delegate = self;
|
_mewCollectionView.delegate = self;
|
||||||
|
@@ -93,6 +93,7 @@
|
|||||||
[self mew_headerRefresh];
|
[self mew_headerRefresh];
|
||||||
}
|
}
|
||||||
-(void)installUI{
|
-(void)installUI{
|
||||||
|
self.view.backgroundColor = UIColorFromRGB(0xF5F5F7);
|
||||||
[self.view addSubview:self.mewBgImageView];
|
[self.view addSubview:self.mewBgImageView];
|
||||||
[self.view addSubview:self.mewStackView];
|
[self.view addSubview:self.mewStackView];
|
||||||
[self.view addSubview:self.mewPagingView];
|
[self.view addSubview:self.mewPagingView];
|
||||||
|
@@ -114,6 +114,9 @@
|
|||||||
/// 点击消失
|
/// 点击消失
|
||||||
- (void)bgTap:(UITapGestureRecognizer *)tap {
|
- (void)bgTap:(UITapGestureRecognizer *)tap {
|
||||||
[self dismiss];
|
[self dismiss];
|
||||||
|
if (self.selectBlock) {
|
||||||
|
self.selectBlock(@"", @"", 404);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
- (void)dismiss {
|
- (void)dismiss {
|
||||||
|
@@ -12,6 +12,7 @@
|
|||||||
NS_ASSUME_NONNULL_BEGIN
|
NS_ASSUME_NONNULL_BEGIN
|
||||||
|
|
||||||
@interface SessionViewController : MvpViewController
|
@interface SessionViewController : MvpViewController
|
||||||
|
@property(nonatomic,assign) BOOL isNOAstrictChat;
|
||||||
@property (nonatomic, strong,readonly) NIMSession * session;
|
@property (nonatomic, strong,readonly) NIMSession * session;
|
||||||
@property(nonatomic,assign) BOOL isFormGame;
|
@property(nonatomic,assign) BOOL isFormGame;
|
||||||
@property (nonatomic, assign) SessionListOpenType openType;
|
@property (nonatomic, assign) SessionListOpenType openType;
|
||||||
|
@@ -348,7 +348,9 @@
|
|||||||
}else{
|
}else{
|
||||||
chatDisabled = !chatLimit.chat && self.messages.count <= 0;
|
chatDisabled = !chatLimit.chat && self.messages.count <= 0;
|
||||||
}
|
}
|
||||||
|
if(self.isNOAstrictChat == YES){
|
||||||
|
chatDisabled = NO;
|
||||||
|
}
|
||||||
if (chatDisabled) {
|
if (chatDisabled) {
|
||||||
SessionChatLimitView *chatLimitView = [[SessionChatLimitView alloc] initWithChatLimit:chatLimit];
|
SessionChatLimitView *chatLimitView = [[SessionChatLimitView alloc] initWithChatLimit:chatLimit];
|
||||||
self.sessionTableView.tableHeaderView = chatLimitView;
|
self.sessionTableView.tableHeaderView = chatLimitView;
|
||||||
|
@@ -327,9 +327,11 @@
|
|||||||
self.isEdited = NO;
|
self.isEdited = NO;
|
||||||
}
|
}
|
||||||
NSArray * array;
|
NSArray * array;
|
||||||
if (self.datasource.count < 9 && self.datasource.count > 1) {
|
if([self.datasource containsObject:self.addPicImage] && self.datasource.count > 1){
|
||||||
array = [self.datasource subarrayWithRange:NSMakeRange(0, self.datasource.count - 1)];
|
array = [self.datasource subarrayWithRange:NSMakeRange(0, self.datasource.count - 1)];
|
||||||
}
|
}else if(![self.datasource containsObject:self.addPicImage] && self.datasource.count == 9){
|
||||||
|
array = self.datasource;
|
||||||
|
}
|
||||||
self.uploadImageList = array;
|
self.uploadImageList = array;
|
||||||
}
|
}
|
||||||
|
|
||||||
|