修正部分错误的单词

This commit is contained in:
eggmanQQQ
2024-07-17 17:49:33 +08:00
parent 228e077f44
commit 7fe6cc9125
118 changed files with 1557 additions and 1565 deletions

View File

@@ -10,7 +10,7 @@
140A7F52299CC69000841594 /* XPTabBar.m in Sources */ = {isa = PBXBuildFile; fileRef = 140A7F51299CC69000841594 /* XPTabBar.m */; };
1427212529A7566100C7C423 /* ZegoAudioRoom.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1427212329A7563A00C7C423 /* ZegoAudioRoom.framework */; };
1427212629A7566100C7C423 /* ZegoAudioRoom.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 1427212329A7563A00C7C423 /* ZegoAudioRoom.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
1427212C29A757EC00C7C423 /* MonentsListInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 1427212A29A757EC00C7C423 /* MonentsListInfoModel.m */; };
1427212C29A757EC00C7C423 /* MomentsListInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 1427212A29A757EC00C7C423 /* MomentsListInfoModel.m */; };
1427212F29A7599500C7C423 /* XPMonentsAttentionPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = 1427212D29A7599500C7C423 /* XPMonentsAttentionPresenter.m */; };
1427213429A75A2600C7C423 /* XPMonentsLatestPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = 1427213329A75A2600C7C423 /* XPMonentsLatestPresenter.m */; };
1427218729A75F6F00C7C423 /* MyHTTPConnection.m in Sources */ = {isa = PBXBuildFile; fileRef = 1427213729A75F6F00C7C423 /* MyHTTPConnection.m */; };
@@ -700,10 +700,10 @@
E801275527E3326000BAC3F2 /* XPRoomPKUserView.m in Sources */ = {isa = PBXBuildFile; fileRef = E801275427E3326000BAC3F2 /* XPRoomPKUserView.m */; };
E801275827E347FD00BAC3F2 /* RoomPKRecordModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E801275727E347FD00BAC3F2 /* RoomPKRecordModel.m */; };
E80487652717DDD9008595F2 /* XPRoomMenuItem.m in Sources */ = {isa = PBXBuildFile; fileRef = E80487642717DDD9008595F2 /* XPRoomMenuItem.m */; };
E8098CA7282E00920090B9F0 /* Api+Monents.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CA6282E00920090B9F0 /* Api+Monents.m */; };
E8098CAA282E03B40090B9F0 /* XPMonentsRecommendPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CA9282E03B40090B9F0 /* XPMonentsRecommendPresenter.m */; };
E8098CAE282E07C00090B9F0 /* XPMonentsEmptyTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CAD282E07C00090B9F0 /* XPMonentsEmptyTableViewCell.m */; };
E8098CB1282E86EF0090B9F0 /* XPMonentsContentView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CB0282E86EF0090B9F0 /* XPMonentsContentView.m */; };
E8098CA7282E00920090B9F0 /* Api+Moments.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CA6282E00920090B9F0 /* Api+Moments.m */; };
E8098CAA282E03B40090B9F0 /* XPMomentsRecommendPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CA9282E03B40090B9F0 /* XPMomentsRecommendPresenter.m */; };
E8098CAE282E07C00090B9F0 /* XPMomentsEmptyTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CAD282E07C00090B9F0 /* XPMomentsEmptyTableViewCell.m */; };
E8098CB1282E86EF0090B9F0 /* XPMomentsContentView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CB0282E86EF0090B9F0 /* XPMomentsContentView.m */; };
E8098CB4282E97550090B9F0 /* XPMineBlackListPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8098CB3282E97550090B9F0 /* XPMineBlackListPresenter.m */; };
E80A086227F2AC190027B30C /* RoomPKDetailInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E80A086127F2AC190027B30C /* RoomPKDetailInfoModel.m */; };
E80A63DC28B86B9700690914 /* MessageContentMonentsAutoView.m in Sources */ = {isa = PBXBuildFile; fileRef = E80A63DB28B86B9700690914 /* MessageContentMonentsAutoView.m */; };
@@ -935,8 +935,8 @@
E81A65312834E53600F55894 /* XPMonentsLatestViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E81A65302834E53600F55894 /* XPMonentsLatestViewController.m */; };
E81A653F283511BE00F55894 /* XPMonentsInteractiveViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E81A653E283511BE00F55894 /* XPMonentsInteractiveViewController.m */; };
E81A65422835120200F55894 /* XPMonentsInteractivePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E81A65412835120200F55894 /* XPMonentsInteractivePresenter.m */; };
E81A6546283519CA00F55894 /* MonentsTopicModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E81A6545283519CA00F55894 /* MonentsTopicModel.m */; };
E81A654928351B9500F55894 /* XPMonentsRecommendHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = E81A654828351B9500F55894 /* XPMonentsRecommendHeaderView.m */; };
E81A6546283519CA00F55894 /* MomentsTopicModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E81A6545283519CA00F55894 /* MomentsTopicModel.m */; };
E81A654928351B9500F55894 /* XPMomentsRecommendHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = E81A654828351B9500F55894 /* XPMomentsRecommendHeaderView.m */; };
E81A654C28351D9900F55894 /* XPMonentsTopicCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E81A654B28351D9900F55894 /* XPMonentsTopicCollectionViewCell.m */; };
E81AF32827F1EE69003B9E43 /* XPRoomPKPanelUserView.m in Sources */ = {isa = PBXBuildFile; fileRef = E81AF32727F1EE69003B9E43 /* XPRoomPKPanelUserView.m */; };
E81C1B1C27705F6B0020D1E4 /* XPArrangeMicPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E81C1B1B27705F6B0020D1E4 /* XPArrangeMicPresenter.m */; };
@@ -957,7 +957,7 @@
E81C27AE26EF39AB0031E639 /* AppDelegate+ThirdConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = E81C27AD26EF39AB0031E639 /* AppDelegate+ThirdConfig.m */; };
E81D58822720082A003063FE /* MicroWaveView.m in Sources */ = {isa = PBXBuildFile; fileRef = E81D58812720082A003063FE /* MicroWaveView.m */; };
E81DCCCD282B63B40039E5C5 /* XPMomentsViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E81DCCCC282B63B40039E5C5 /* XPMomentsViewController.m */; };
E81DCCD0282B63FD0039E5C5 /* XPMonentsRecommendViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E81DCCCF282B63FD0039E5C5 /* XPMonentsRecommendViewController.m */; };
E81DCCD0282B63FD0039E5C5 /* XPMomentsRecommendViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E81DCCCF282B63FD0039E5C5 /* XPMomentsRecommendViewController.m */; };
E81E09C9290F71BF00A1F410 /* XPAdvertiseView.m in Sources */ = {isa = PBXBuildFile; fileRef = E81E09C8290F71BF00A1F410 /* XPAdvertiseView.m */; };
E81E09CC290F732600A1F410 /* XPAdImageTool.m in Sources */ = {isa = PBXBuildFile; fileRef = E81E09CB290F732600A1F410 /* XPAdImageTool.m */; };
E81E09CF290F750800A1F410 /* AdvertiseModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E81E09CE290F750800A1F410 /* AdvertiseModel.m */; };
@@ -1066,7 +1066,7 @@
E84CBCE128436D3C00D43221 /* XPMineContactViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E84CBCE028436D3C00D43221 /* XPMineContactViewController.m */; };
E84CBCE4284372D800D43221 /* XPRoomHalfMessageView.m in Sources */ = {isa = PBXBuildFile; fileRef = E84CBCE3284372D800D43221 /* XPRoomHalfMessageView.m */; };
E84CBCE72843807500D43221 /* XPMineFriendPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E84CBCE62843807400D43221 /* XPMineFriendPresenter.m */; };
E852D73B286317F0001465ED /* XPMonentsDetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E852D73A286317F0001465ED /* XPMonentsDetailViewController.m */; };
E852D73B286317F0001465ED /* XPMomentsDetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E852D73A286317F0001465ED /* XPMomentsDetailViewController.m */; };
E852D73E28631C18001465ED /* XPMonentsCommentTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E852D73D28631C18001465ED /* XPMonentsCommentTableViewCell.m */; };
E852D7412863249F001465ED /* XPMonentsReplyTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E852D7402863249F001465ED /* XPMonentsReplyTableViewCell.m */; };
E852D74428633A08001465ED /* MonentsCommentModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E852D74328633A08001465ED /* MonentsCommentModel.m */; };
@@ -1316,7 +1316,7 @@
E885D5362977CE28004DC088 /* SessionSettingModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E885D5352977CE28004DC088 /* SessionSettingModel.m */; };
E885D5392977D10E004DC088 /* SessionSettingUserView.m in Sources */ = {isa = PBXBuildFile; fileRef = E885D5382977D10E004DC088 /* SessionSettingUserView.m */; };
E885D53C2977FBFD004DC088 /* MessageTimeView.m in Sources */ = {isa = PBXBuildFile; fileRef = E885D53B2977FBFD004DC088 /* MessageTimeView.m */; };
E88749B6282B8FC600C3C7DB /* MonentsInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E88749B5282B8FC600C3C7DB /* MonentsInfoModel.m */; };
E88749B6282B8FC600C3C7DB /* MomentsInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E88749B5282B8FC600C3C7DB /* MomentsInfoModel.m */; };
E88863C6278EAFC3004BCFAB /* XPAcrossRoomPKResultView.m in Sources */ = {isa = PBXBuildFile; fileRef = E88863C5278EAFC3004BCFAB /* XPAcrossRoomPKResultView.m */; };
E88863C9278EBA43004BCFAB /* XPAcrossRoomPKForceEndResultView.m in Sources */ = {isa = PBXBuildFile; fileRef = E88863C8278EBA43004BCFAB /* XPAcrossRoomPKForceEndResultView.m */; };
E88863CC278EC336004BCFAB /* AcrossRoomPKPrizeModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E88863CB278EC336004BCFAB /* AcrossRoomPKPrizeModel.m */; };
@@ -1341,11 +1341,11 @@
E890BC07273CF1800007C46B /* XPGiftCountCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E890BC06273CF1800007C46B /* XPGiftCountCollectionViewCell.m */; };
E890BC0D273D09A50007C46B /* XPGiftCountView.m in Sources */ = {isa = PBXBuildFile; fileRef = E890BC0C273D09A50007C46B /* XPGiftCountView.m */; };
E890BC10273D23F00007C46B /* GiftInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E890BC0F273D23F00007C46B /* GiftInfoModel.m */; };
E8950180282CAC49007E459A /* XPMonentsUserInfoView.m in Sources */ = {isa = PBXBuildFile; fileRef = E895017F282CAC49007E459A /* XPMonentsUserInfoView.m */; };
E8950183282CAC6A007E459A /* XPMonentsPhotoView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8950182282CAC6A007E459A /* XPMonentsPhotoView.m */; };
E8950186282CAC80007E459A /* XPMonentsTooBarView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8950185282CAC80007E459A /* XPMonentsTooBarView.m */; };
E8950189282CFFB1007E459A /* XPMonentsLayoutConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = E8950188282CFFB1007E459A /* XPMonentsLayoutConfig.m */; };
E895018C282D0701007E459A /* XPMoentsTopicView.m in Sources */ = {isa = PBXBuildFile; fileRef = E895018B282D0701007E459A /* XPMoentsTopicView.m */; };
E8950180282CAC49007E459A /* XPMomentsUserInfoView.m in Sources */ = {isa = PBXBuildFile; fileRef = E895017F282CAC49007E459A /* XPMomentsUserInfoView.m */; };
E8950183282CAC6A007E459A /* XPMomentsPhotoView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8950182282CAC6A007E459A /* XPMomentsPhotoView.m */; };
E8950186282CAC80007E459A /* XPMomentsTooBarView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8950185282CAC80007E459A /* XPMomentsTooBarView.m */; };
E8950189282CFFB1007E459A /* XPMomentsLayoutConfig.m in Sources */ = {isa = PBXBuildFile; fileRef = E8950188282CFFB1007E459A /* XPMomentsLayoutConfig.m */; };
E895018C282D0701007E459A /* XPMomentsTopicView.m in Sources */ = {isa = PBXBuildFile; fileRef = E895018B282D0701007E459A /* XPMomentsTopicView.m */; };
E896EF942771AAC100AD2CC1 /* XPMineFansPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E896EF932771AAC100AD2CC1 /* XPMineFansPresenter.m */; };
E896EF972771AAE400AD2CC1 /* XPMineAttentionPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E896EF962771AAE400AD2CC1 /* XPMineAttentionPresenter.m */; };
E896EF9C2771AE6B00AD2CC1 /* XPMineFansViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E896EF9B2771AE6B00AD2CC1 /* XPMineFansViewController.m */; };
@@ -1404,16 +1404,16 @@
E8A88D3027E85EEA00CA8837 /* RoomPKInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8A88D2F27E85EEA00CA8837 /* RoomPKInfoModel.m */; };
E8AA6EEF27DF1E6B009B4C2B /* XPRoomTopicViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AA6EEE27DF1E6B009B4C2B /* XPRoomTopicViewController.m */; };
E8AA6EF227DF1E97009B4C2B /* XPRoomTopicPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AA6EF127DF1E97009B4C2B /* XPRoomTopicPresenter.m */; };
E8AB630D28ADD8C60023B0D2 /* XPMonentTopicContainerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB630C28ADD8C60023B0D2 /* XPMonentTopicContainerViewController.m */; };
E8AB630D28ADD8C60023B0D2 /* XPMomentTopicContainerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB630C28ADD8C60023B0D2 /* XPMomentTopicContainerViewController.m */; };
E8AB631028ADD92D0023B0D2 /* XPMonentsTopicRecommondViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB630F28ADD92D0023B0D2 /* XPMonentsTopicRecommondViewController.m */; };
E8AB631328ADDCF20023B0D2 /* XPMonentsTopicHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB631228ADDCF20023B0D2 /* XPMonentsTopicHeaderView.m */; };
E8AB631628ADE2D20023B0D2 /* XPMonentsTopicLatestViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB631528ADE2D20023B0D2 /* XPMonentsTopicLatestViewController.m */; };
E8AB631928ADE2F40023B0D2 /* XPMonentsTopicRecommendPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB631828ADE2F40023B0D2 /* XPMonentsTopicRecommendPresenter.m */; };
E8AB631C28ADE30E0023B0D2 /* XPMonentsTopicLatestPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB631B28ADE30E0023B0D2 /* XPMonentsTopicLatestPresenter.m */; };
E8AB632428AE10310023B0D2 /* XPMoentsTopicListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB632328AE10310023B0D2 /* XPMoentsTopicListViewController.m */; };
E8AB632728AE13210023B0D2 /* XPMonentsTopicListPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB632628AE13210023B0D2 /* XPMonentsTopicListPresenter.m */; };
E8AB632C28AE19600023B0D2 /* XPMonentsMineViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB632B28AE19600023B0D2 /* XPMonentsMineViewController.m */; };
E8AB632F28AE19DE0023B0D2 /* XPMonentMinePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB632E28AE19DE0023B0D2 /* XPMonentMinePresenter.m */; };
E8AB632428AE10310023B0D2 /* XPMomentsTopicListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB632328AE10310023B0D2 /* XPMomentsTopicListViewController.m */; };
E8AB632728AE13210023B0D2 /* XPMomentsTopicListPresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB632628AE13210023B0D2 /* XPMomentsTopicListPresenter.m */; };
E8AB632C28AE19600023B0D2 /* XPMomentsMineViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB632B28AE19600023B0D2 /* XPMomentsMineViewController.m */; };
E8AB632F28AE19DE0023B0D2 /* XPMomentMinePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB632E28AE19DE0023B0D2 /* XPMomentMinePresenter.m */; };
E8AB633328AE51470023B0D2 /* XPSailingPrizeView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB633228AE51470023B0D2 /* XPSailingPrizeView.m */; };
E8AB633628AE54A40023B0D2 /* XPSailingPrizeCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AB633528AE54A40023B0D2 /* XPSailingPrizeCollectionViewCell.m */; };
E8AC721026F43955007D6E91 /* UIImageConstant.m in Sources */ = {isa = PBXBuildFile; fileRef = E8AC720F26F43955007D6E91 /* UIImageConstant.m */; };
@@ -1489,7 +1489,7 @@
E8D4DE472940473500EC788D /* GiftTwelveStarFirstModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8D4DE462940473500EC788D /* GiftTwelveStarFirstModel.m */; };
E8D55C9D28113218006935A5 /* MessageMenuModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8D55C9C28113218006935A5 /* MessageMenuModel.m */; };
E8D55CA0281186D6006935A5 /* SessionAudioRecordView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8D55C9F281186D6006935A5 /* SessionAudioRecordView.m */; };
E8D7D74B282BA1EC0007D7BD /* XPMonentsTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8D7D74A282BA1EC0007D7BD /* XPMonentsTableViewCell.m */; };
E8D7D74B282BA1EC0007D7BD /* XPMomentsTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E8D7D74A282BA1EC0007D7BD /* XPMomentsTableViewCell.m */; };
E8DAC5AC2858305A00012CFD /* XPRoomMessageBubbleView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8DAC5AB2858305A00012CFD /* XPRoomMessageBubbleView.m */; };
E8DACCFB2766EDC60052092C /* MicroGiftValueView.m in Sources */ = {isa = PBXBuildFile; fileRef = E8DACCFA2766EDC60052092C /* MicroGiftValueView.m */; };
E8DACCFE27673F870052092C /* GiftValueInfoModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E8DACCFD27673F870052092C /* GiftValueInfoModel.m */; };
@@ -1580,8 +1580,8 @@
140A7F50299CC69000841594 /* XPTabBar.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPTabBar.h; sourceTree = "<group>"; };
140A7F51299CC69000841594 /* XPTabBar.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPTabBar.m; sourceTree = "<group>"; };
1427212329A7563A00C7C423 /* ZegoAudioRoom.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = ZegoAudioRoom.framework; sourceTree = "<group>"; };
1427212A29A757EC00C7C423 /* MonentsListInfoModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MonentsListInfoModel.m; sourceTree = "<group>"; };
1427212B29A757EC00C7C423 /* MonentsListInfoModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MonentsListInfoModel.h; sourceTree = "<group>"; };
1427212A29A757EC00C7C423 /* MomentsListInfoModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MomentsListInfoModel.m; sourceTree = "<group>"; };
1427212B29A757EC00C7C423 /* MomentsListInfoModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MomentsListInfoModel.h; sourceTree = "<group>"; };
1427212D29A7599500C7C423 /* XPMonentsAttentionPresenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPMonentsAttentionPresenter.m; sourceTree = "<group>"; };
1427212E29A7599500C7C423 /* XPMonentsAttentionPresenter.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPMonentsAttentionPresenter.h; sourceTree = "<group>"; };
1427213029A759D200C7C423 /* XPMonentsAttentionProtocol.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPMonentsAttentionProtocol.h; sourceTree = "<group>"; };
@@ -1660,7 +1660,7 @@
14DCAD0D299B6AD900A7DD31 /* XPForgetPwdViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPForgetPwdViewController.m; sourceTree = "<group>"; };
14EB640729A5BDDD00A4A00B /* XPMomentsSimpleDetailViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsSimpleDetailViewController.h; sourceTree = "<group>"; };
14EB640829A5BDDD00A4A00B /* XPMomentsSimpleDetailViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsSimpleDetailViewController.m; sourceTree = "<group>"; };
14EB640A29A5BEE800A4A00B /* XPMonentsDetailViewControllerDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsDetailViewControllerDelegate.h; sourceTree = "<group>"; };
14EB640A29A5BEE800A4A00B /* XPMomentsDetailViewControllerDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsDetailViewControllerDelegate.h; sourceTree = "<group>"; };
14EB640B29A5C16000A4A00B /* XPMomentsSimpleDetailNav.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsSimpleDetailNav.h; sourceTree = "<group>"; };
14EB640C29A5C16000A4A00B /* XPMomentsSimpleDetailNav.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsSimpleDetailNav.m; sourceTree = "<group>"; };
180116F7279E8C4C00F2CBC0 /* PLTimeUtil.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = PLTimeUtil.h; sourceTree = "<group>"; };
@@ -2955,15 +2955,15 @@
E801275727E347FD00BAC3F2 /* RoomPKRecordModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RoomPKRecordModel.m; sourceTree = "<group>"; };
E80487632717DDD9008595F2 /* XPRoomMenuItem.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomMenuItem.h; sourceTree = "<group>"; };
E80487642717DDD9008595F2 /* XPRoomMenuItem.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomMenuItem.m; sourceTree = "<group>"; };
E8098CA5282E00920090B9F0 /* Api+Monents.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Api+Monents.h"; sourceTree = "<group>"; };
E8098CA6282E00920090B9F0 /* Api+Monents.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "Api+Monents.m"; sourceTree = "<group>"; };
E8098CA8282E03B40090B9F0 /* XPMonentsRecommendPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsRecommendPresenter.h; sourceTree = "<group>"; };
E8098CA9282E03B40090B9F0 /* XPMonentsRecommendPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsRecommendPresenter.m; sourceTree = "<group>"; };
E8098CAB282E04870090B9F0 /* XPMonentsRecommendProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsRecommendProtocol.h; sourceTree = "<group>"; };
E8098CAC282E07C00090B9F0 /* XPMonentsEmptyTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsEmptyTableViewCell.h; sourceTree = "<group>"; };
E8098CAD282E07C00090B9F0 /* XPMonentsEmptyTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsEmptyTableViewCell.m; sourceTree = "<group>"; };
E8098CAF282E86EF0090B9F0 /* XPMonentsContentView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsContentView.h; sourceTree = "<group>"; };
E8098CB0282E86EF0090B9F0 /* XPMonentsContentView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsContentView.m; sourceTree = "<group>"; };
E8098CA5282E00920090B9F0 /* Api+Moments.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Api+Moments.h"; sourceTree = "<group>"; };
E8098CA6282E00920090B9F0 /* Api+Moments.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "Api+Moments.m"; sourceTree = "<group>"; };
E8098CA8282E03B40090B9F0 /* XPMomentsRecommendPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsRecommendPresenter.h; sourceTree = "<group>"; };
E8098CA9282E03B40090B9F0 /* XPMomentsRecommendPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsRecommendPresenter.m; sourceTree = "<group>"; };
E8098CAB282E04870090B9F0 /* XPMomentsRecommendProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsRecommendProtocol.h; sourceTree = "<group>"; };
E8098CAC282E07C00090B9F0 /* XPMomentsEmptyTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsEmptyTableViewCell.h; sourceTree = "<group>"; };
E8098CAD282E07C00090B9F0 /* XPMomentsEmptyTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsEmptyTableViewCell.m; sourceTree = "<group>"; };
E8098CAF282E86EF0090B9F0 /* XPMomentsContentView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsContentView.h; sourceTree = "<group>"; };
E8098CB0282E86EF0090B9F0 /* XPMomentsContentView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsContentView.m; sourceTree = "<group>"; };
E8098CB2282E97550090B9F0 /* XPMineBlackListPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineBlackListPresenter.h; sourceTree = "<group>"; };
E8098CB3282E97550090B9F0 /* XPMineBlackListPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineBlackListPresenter.m; sourceTree = "<group>"; };
E8098CB6282E97AC0090B9F0 /* XPMineBlackListProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineBlackListProtocol.h; sourceTree = "<group>"; };
@@ -3259,10 +3259,10 @@
E81A65402835120200F55894 /* XPMonentsInteractivePresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsInteractivePresenter.h; sourceTree = "<group>"; };
E81A65412835120200F55894 /* XPMonentsInteractivePresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsInteractivePresenter.m; sourceTree = "<group>"; };
E81A65432835121000F55894 /* XPMonentsInteractiveProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsInteractiveProtocol.h; sourceTree = "<group>"; };
E81A6544283519CA00F55894 /* MonentsTopicModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MonentsTopicModel.h; sourceTree = "<group>"; };
E81A6545283519CA00F55894 /* MonentsTopicModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MonentsTopicModel.m; sourceTree = "<group>"; };
E81A654728351B9500F55894 /* XPMonentsRecommendHeaderView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsRecommendHeaderView.h; sourceTree = "<group>"; };
E81A654828351B9500F55894 /* XPMonentsRecommendHeaderView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsRecommendHeaderView.m; sourceTree = "<group>"; };
E81A6544283519CA00F55894 /* MomentsTopicModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MomentsTopicModel.h; sourceTree = "<group>"; };
E81A6545283519CA00F55894 /* MomentsTopicModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MomentsTopicModel.m; sourceTree = "<group>"; };
E81A654728351B9500F55894 /* XPMomentsRecommendHeaderView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsRecommendHeaderView.h; sourceTree = "<group>"; };
E81A654828351B9500F55894 /* XPMomentsRecommendHeaderView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsRecommendHeaderView.m; sourceTree = "<group>"; };
E81A654A28351D9900F55894 /* XPMonentsTopicCollectionViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTopicCollectionViewCell.h; sourceTree = "<group>"; };
E81A654B28351D9900F55894 /* XPMonentsTopicCollectionViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsTopicCollectionViewCell.m; sourceTree = "<group>"; };
E81AF32627F1EE69003B9E43 /* XPRoomPKPanelUserView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomPKPanelUserView.h; sourceTree = "<group>"; };
@@ -3304,8 +3304,8 @@
E81D58812720082A003063FE /* MicroWaveView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MicroWaveView.m; sourceTree = "<group>"; };
E81DCCCB282B63B40039E5C5 /* XPMomentsViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsViewController.h; sourceTree = "<group>"; };
E81DCCCC282B63B40039E5C5 /* XPMomentsViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsViewController.m; sourceTree = "<group>"; };
E81DCCCE282B63FD0039E5C5 /* XPMonentsRecommendViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsRecommendViewController.h; sourceTree = "<group>"; };
E81DCCCF282B63FD0039E5C5 /* XPMonentsRecommendViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsRecommendViewController.m; sourceTree = "<group>"; };
E81DCCCE282B63FD0039E5C5 /* XPMomentsRecommendViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsRecommendViewController.h; sourceTree = "<group>"; };
E81DCCCF282B63FD0039E5C5 /* XPMomentsRecommendViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsRecommendViewController.m; sourceTree = "<group>"; };
E81E09C7290F71BF00A1F410 /* XPAdvertiseView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPAdvertiseView.h; sourceTree = "<group>"; };
E81E09C8290F71BF00A1F410 /* XPAdvertiseView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPAdvertiseView.m; sourceTree = "<group>"; };
E81E09CA290F732500A1F410 /* XPAdImageTool.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPAdImageTool.h; sourceTree = "<group>"; };
@@ -3526,8 +3526,8 @@
E84CBCE52843807400D43221 /* XPMineFriendPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineFriendPresenter.h; sourceTree = "<group>"; };
E84CBCE62843807400D43221 /* XPMineFriendPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineFriendPresenter.m; sourceTree = "<group>"; };
E84CBCE8284380B300D43221 /* XPMineFriendProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineFriendProtocol.h; sourceTree = "<group>"; };
E852D739286317F0001465ED /* XPMonentsDetailViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsDetailViewController.h; sourceTree = "<group>"; };
E852D73A286317F0001465ED /* XPMonentsDetailViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsDetailViewController.m; sourceTree = "<group>"; };
E852D739286317F0001465ED /* XPMomentsDetailViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsDetailViewController.h; sourceTree = "<group>"; };
E852D73A286317F0001465ED /* XPMomentsDetailViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsDetailViewController.m; sourceTree = "<group>"; };
E852D73C28631C18001465ED /* XPMonentsCommentTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsCommentTableViewCell.h; sourceTree = "<group>"; };
E852D73D28631C18001465ED /* XPMonentsCommentTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsCommentTableViewCell.m; sourceTree = "<group>"; };
E852D73F2863249F001465ED /* XPMonentsReplyTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsReplyTableViewCell.h; sourceTree = "<group>"; };
@@ -4054,8 +4054,8 @@
E885D5382977D10E004DC088 /* SessionSettingUserView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SessionSettingUserView.m; sourceTree = "<group>"; };
E885D53A2977FBFD004DC088 /* MessageTimeView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MessageTimeView.h; sourceTree = "<group>"; };
E885D53B2977FBFD004DC088 /* MessageTimeView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MessageTimeView.m; sourceTree = "<group>"; };
E88749B4282B8FC600C3C7DB /* MonentsInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MonentsInfoModel.h; sourceTree = "<group>"; };
E88749B5282B8FC600C3C7DB /* MonentsInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MonentsInfoModel.m; sourceTree = "<group>"; };
E88749B4282B8FC600C3C7DB /* MomentsInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MomentsInfoModel.h; sourceTree = "<group>"; };
E88749B5282B8FC600C3C7DB /* MomentsInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MomentsInfoModel.m; sourceTree = "<group>"; };
E88863C4278EAFC3004BCFAB /* XPAcrossRoomPKResultView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPAcrossRoomPKResultView.h; sourceTree = "<group>"; };
E88863C5278EAFC3004BCFAB /* XPAcrossRoomPKResultView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPAcrossRoomPKResultView.m; sourceTree = "<group>"; };
E88863C7278EBA43004BCFAB /* XPAcrossRoomPKForceEndResultView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPAcrossRoomPKForceEndResultView.h; sourceTree = "<group>"; };
@@ -4104,16 +4104,16 @@
E890BC0C273D09A50007C46B /* XPGiftCountView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPGiftCountView.m; sourceTree = "<group>"; };
E890BC0E273D23F00007C46B /* GiftInfoModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GiftInfoModel.h; sourceTree = "<group>"; };
E890BC0F273D23F00007C46B /* GiftInfoModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = GiftInfoModel.m; sourceTree = "<group>"; };
E895017E282CAC49007E459A /* XPMonentsUserInfoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsUserInfoView.h; sourceTree = "<group>"; };
E895017F282CAC49007E459A /* XPMonentsUserInfoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsUserInfoView.m; sourceTree = "<group>"; };
E8950181282CAC6A007E459A /* XPMonentsPhotoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsPhotoView.h; sourceTree = "<group>"; };
E8950182282CAC6A007E459A /* XPMonentsPhotoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsPhotoView.m; sourceTree = "<group>"; };
E8950184282CAC80007E459A /* XPMonentsTooBarView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTooBarView.h; sourceTree = "<group>"; };
E8950185282CAC80007E459A /* XPMonentsTooBarView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsTooBarView.m; sourceTree = "<group>"; };
E8950187282CFFB1007E459A /* XPMonentsLayoutConfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsLayoutConfig.h; sourceTree = "<group>"; };
E8950188282CFFB1007E459A /* XPMonentsLayoutConfig.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsLayoutConfig.m; sourceTree = "<group>"; };
E895018A282D0701007E459A /* XPMoentsTopicView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMoentsTopicView.h; sourceTree = "<group>"; };
E895018B282D0701007E459A /* XPMoentsTopicView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMoentsTopicView.m; sourceTree = "<group>"; };
E895017E282CAC49007E459A /* XPMomentsUserInfoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsUserInfoView.h; sourceTree = "<group>"; };
E895017F282CAC49007E459A /* XPMomentsUserInfoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsUserInfoView.m; sourceTree = "<group>"; };
E8950181282CAC6A007E459A /* XPMomentsPhotoView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsPhotoView.h; sourceTree = "<group>"; };
E8950182282CAC6A007E459A /* XPMomentsPhotoView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsPhotoView.m; sourceTree = "<group>"; };
E8950184282CAC80007E459A /* XPMomentsTooBarView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsTooBarView.h; sourceTree = "<group>"; };
E8950185282CAC80007E459A /* XPMomentsTooBarView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsTooBarView.m; sourceTree = "<group>"; };
E8950187282CFFB1007E459A /* XPMomentsLayoutConfig.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsLayoutConfig.h; sourceTree = "<group>"; };
E8950188282CFFB1007E459A /* XPMomentsLayoutConfig.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsLayoutConfig.m; sourceTree = "<group>"; };
E895018A282D0701007E459A /* XPMomentsTopicView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsTopicView.h; sourceTree = "<group>"; };
E895018B282D0701007E459A /* XPMomentsTopicView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsTopicView.m; sourceTree = "<group>"; };
E896EF922771AAC100AD2CC1 /* XPMineFansPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineFansPresenter.h; sourceTree = "<group>"; };
E896EF932771AAC100AD2CC1 /* XPMineFansPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineFansPresenter.m; sourceTree = "<group>"; };
E896EF952771AAE400AD2CC1 /* XPMineAttentionPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineAttentionPresenter.h; sourceTree = "<group>"; };
@@ -4237,8 +4237,8 @@
E8AA6EF027DF1E97009B4C2B /* XPRoomTopicPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomTopicPresenter.h; sourceTree = "<group>"; };
E8AA6EF127DF1E97009B4C2B /* XPRoomTopicPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomTopicPresenter.m; sourceTree = "<group>"; };
E8AA6EF327DF1EB6009B4C2B /* XPRoomTopicProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomTopicProtocol.h; sourceTree = "<group>"; };
E8AB630B28ADD8C60023B0D2 /* XPMonentTopicContainerViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentTopicContainerViewController.h; sourceTree = "<group>"; };
E8AB630C28ADD8C60023B0D2 /* XPMonentTopicContainerViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentTopicContainerViewController.m; sourceTree = "<group>"; };
E8AB630B28ADD8C60023B0D2 /* XPMomentTopicContainerViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentTopicContainerViewController.h; sourceTree = "<group>"; };
E8AB630C28ADD8C60023B0D2 /* XPMomentTopicContainerViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentTopicContainerViewController.m; sourceTree = "<group>"; };
E8AB630E28ADD92D0023B0D2 /* XPMonentsTopicRecommondViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTopicRecommondViewController.h; sourceTree = "<group>"; };
E8AB630F28ADD92D0023B0D2 /* XPMonentsTopicRecommondViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsTopicRecommondViewController.m; sourceTree = "<group>"; };
E8AB631128ADDCF20023B0D2 /* XPMonentsTopicHeaderView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTopicHeaderView.h; sourceTree = "<group>"; };
@@ -4251,16 +4251,16 @@
E8AB631B28ADE30E0023B0D2 /* XPMonentsTopicLatestPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsTopicLatestPresenter.m; sourceTree = "<group>"; };
E8AB632028ADE5720023B0D2 /* XPMonentsTopicRecommendProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTopicRecommendProtocol.h; sourceTree = "<group>"; };
E8AB632128ADE5880023B0D2 /* XPMonentsTopicLatestProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTopicLatestProtocol.h; sourceTree = "<group>"; };
E8AB632228AE10310023B0D2 /* XPMoentsTopicListViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMoentsTopicListViewController.h; sourceTree = "<group>"; };
E8AB632328AE10310023B0D2 /* XPMoentsTopicListViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMoentsTopicListViewController.m; sourceTree = "<group>"; };
E8AB632528AE13210023B0D2 /* XPMonentsTopicListPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTopicListPresenter.h; sourceTree = "<group>"; };
E8AB632628AE13210023B0D2 /* XPMonentsTopicListPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsTopicListPresenter.m; sourceTree = "<group>"; };
E8AB632928AE15070023B0D2 /* XPMonentsTopicListProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTopicListProtocol.h; sourceTree = "<group>"; };
E8AB632A28AE19600023B0D2 /* XPMonentsMineViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsMineViewController.h; sourceTree = "<group>"; };
E8AB632B28AE19600023B0D2 /* XPMonentsMineViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsMineViewController.m; sourceTree = "<group>"; };
E8AB632D28AE19DE0023B0D2 /* XPMonentMinePresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentMinePresenter.h; sourceTree = "<group>"; };
E8AB632E28AE19DE0023B0D2 /* XPMonentMinePresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentMinePresenter.m; sourceTree = "<group>"; };
E8AB633028AE19FA0023B0D2 /* XPMonentsMineProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsMineProtocol.h; sourceTree = "<group>"; };
E8AB632228AE10310023B0D2 /* XPMomentsTopicListViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsTopicListViewController.h; sourceTree = "<group>"; };
E8AB632328AE10310023B0D2 /* XPMomentsTopicListViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsTopicListViewController.m; sourceTree = "<group>"; };
E8AB632528AE13210023B0D2 /* XPMomentsTopicListPresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsTopicListPresenter.h; sourceTree = "<group>"; };
E8AB632628AE13210023B0D2 /* XPMomentsTopicListPresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsTopicListPresenter.m; sourceTree = "<group>"; };
E8AB632928AE15070023B0D2 /* XPMomentsTopicListProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsTopicListProtocol.h; sourceTree = "<group>"; };
E8AB632A28AE19600023B0D2 /* XPMomentsMineViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsMineViewController.h; sourceTree = "<group>"; };
E8AB632B28AE19600023B0D2 /* XPMomentsMineViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsMineViewController.m; sourceTree = "<group>"; };
E8AB632D28AE19DE0023B0D2 /* XPMomentMinePresenter.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentMinePresenter.h; sourceTree = "<group>"; };
E8AB632E28AE19DE0023B0D2 /* XPMomentMinePresenter.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentMinePresenter.m; sourceTree = "<group>"; };
E8AB633028AE19FA0023B0D2 /* XPMomentsMineProtocol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsMineProtocol.h; sourceTree = "<group>"; };
E8AB633128AE51470023B0D2 /* XPSailingPrizeView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSailingPrizeView.h; sourceTree = "<group>"; };
E8AB633228AE51470023B0D2 /* XPSailingPrizeView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPSailingPrizeView.m; sourceTree = "<group>"; };
E8AB633428AE54A40023B0D2 /* XPSailingPrizeCollectionViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSailingPrizeCollectionViewCell.h; sourceTree = "<group>"; };
@@ -4409,8 +4409,8 @@
E8D55C9C28113218006935A5 /* MessageMenuModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MessageMenuModel.m; sourceTree = "<group>"; };
E8D55C9E281186D6006935A5 /* SessionAudioRecordView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SessionAudioRecordView.h; sourceTree = "<group>"; };
E8D55C9F281186D6006935A5 /* SessionAudioRecordView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = SessionAudioRecordView.m; sourceTree = "<group>"; };
E8D7D749282BA1EC0007D7BD /* XPMonentsTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMonentsTableViewCell.h; sourceTree = "<group>"; };
E8D7D74A282BA1EC0007D7BD /* XPMonentsTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMonentsTableViewCell.m; sourceTree = "<group>"; };
E8D7D749282BA1EC0007D7BD /* XPMomentsTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentsTableViewCell.h; sourceTree = "<group>"; };
E8D7D74A282BA1EC0007D7BD /* XPMomentsTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentsTableViewCell.m; sourceTree = "<group>"; };
E8DAC5AA2858305A00012CFD /* XPRoomMessageBubbleView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomMessageBubbleView.h; sourceTree = "<group>"; };
E8DAC5AB2858305A00012CFD /* XPRoomMessageBubbleView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPRoomMessageBubbleView.m; sourceTree = "<group>"; };
E8DACCF92766EDC60052092C /* MicroGiftValueView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MicroGiftValueView.h; sourceTree = "<group>"; };
@@ -7748,15 +7748,15 @@
children = (
1427213129A75A1700C7C423 /* XPMonentsLatestProtocol.h */,
1427213029A759D200C7C423 /* XPMonentsAttentionProtocol.h */,
E8098CAB282E04870090B9F0 /* XPMonentsRecommendProtocol.h */,
E8098CAB282E04870090B9F0 /* XPMomentsRecommendProtocol.h */,
E81A65432835121000F55894 /* XPMonentsInteractiveProtocol.h */,
E8541036286443D8005CFD9F /* XPMonentsDetailProtocol.h */,
E818E34C286ECAD8005EDF68 /* XPMonentsPublishProtocol.h */,
E8AB632028ADE5720023B0D2 /* XPMonentsTopicRecommendProtocol.h */,
E8AB632128ADE5880023B0D2 /* XPMonentsTopicLatestProtocol.h */,
E8AB632928AE15070023B0D2 /* XPMonentsTopicListProtocol.h */,
E8AB633028AE19FA0023B0D2 /* XPMonentsMineProtocol.h */,
14EB640A29A5BEE800A4A00B /* XPMonentsDetailViewControllerDelegate.h */,
E8AB632928AE15070023B0D2 /* XPMomentsTopicListProtocol.h */,
E8AB633028AE19FA0023B0D2 /* XPMomentsMineProtocol.h */,
14EB640A29A5BEE800A4A00B /* XPMomentsDetailViewControllerDelegate.h */,
);
path = Protocol;
sourceTree = "<group>";
@@ -7768,10 +7768,10 @@
1427213329A75A2600C7C423 /* XPMonentsLatestPresenter.m */,
1427212E29A7599500C7C423 /* XPMonentsAttentionPresenter.h */,
1427212D29A7599500C7C423 /* XPMonentsAttentionPresenter.m */,
E8950187282CFFB1007E459A /* XPMonentsLayoutConfig.h */,
E8950188282CFFB1007E459A /* XPMonentsLayoutConfig.m */,
E8098CA8282E03B40090B9F0 /* XPMonentsRecommendPresenter.h */,
E8098CA9282E03B40090B9F0 /* XPMonentsRecommendPresenter.m */,
E8950187282CFFB1007E459A /* XPMomentsLayoutConfig.h */,
E8950188282CFFB1007E459A /* XPMomentsLayoutConfig.m */,
E8098CA8282E03B40090B9F0 /* XPMomentsRecommendPresenter.h */,
E8098CA9282E03B40090B9F0 /* XPMomentsRecommendPresenter.m */,
E81A65402835120200F55894 /* XPMonentsInteractivePresenter.h */,
E81A65412835120200F55894 /* XPMonentsInteractivePresenter.m */,
E85410332864155A005CFD9F /* XPMonentDetailPresenter.h */,
@@ -7782,10 +7782,10 @@
E8AB631828ADE2F40023B0D2 /* XPMonentsTopicRecommendPresenter.m */,
E8AB631A28ADE30E0023B0D2 /* XPMonentsTopicLatestPresenter.h */,
E8AB631B28ADE30E0023B0D2 /* XPMonentsTopicLatestPresenter.m */,
E8AB632528AE13210023B0D2 /* XPMonentsTopicListPresenter.h */,
E8AB632628AE13210023B0D2 /* XPMonentsTopicListPresenter.m */,
E8AB632D28AE19DE0023B0D2 /* XPMonentMinePresenter.h */,
E8AB632E28AE19DE0023B0D2 /* XPMonentMinePresenter.m */,
E8AB632528AE13210023B0D2 /* XPMomentsTopicListPresenter.h */,
E8AB632628AE13210023B0D2 /* XPMomentsTopicListPresenter.m */,
E8AB632D28AE19DE0023B0D2 /* XPMomentMinePresenter.h */,
E8AB632E28AE19DE0023B0D2 /* XPMomentMinePresenter.m */,
);
path = Presenter;
sourceTree = "<group>";
@@ -7797,28 +7797,28 @@
E8D7D747282BA1C20007D7BD /* Cell */,
E81DCCCB282B63B40039E5C5 /* XPMomentsViewController.h */,
E81DCCCC282B63B40039E5C5 /* XPMomentsViewController.m */,
E81DCCCE282B63FD0039E5C5 /* XPMonentsRecommendViewController.h */,
E81DCCCF282B63FD0039E5C5 /* XPMonentsRecommendViewController.m */,
E81DCCCE282B63FD0039E5C5 /* XPMomentsRecommendViewController.h */,
E81DCCCF282B63FD0039E5C5 /* XPMomentsRecommendViewController.m */,
E81A65292834E4F600F55894 /* XPMonentsAttentionViewController.h */,
E81A652A2834E4F600F55894 /* XPMonentsAttentionViewController.m */,
E81A652F2834E53600F55894 /* XPMonentsLatestViewController.h */,
E81A65302834E53600F55894 /* XPMonentsLatestViewController.m */,
E81A653D283511BE00F55894 /* XPMonentsInteractiveViewController.h */,
E81A653E283511BE00F55894 /* XPMonentsInteractiveViewController.m */,
E852D739286317F0001465ED /* XPMonentsDetailViewController.h */,
E852D73A286317F0001465ED /* XPMonentsDetailViewController.m */,
E852D739286317F0001465ED /* XPMomentsDetailViewController.h */,
E852D73A286317F0001465ED /* XPMomentsDetailViewController.m */,
E818E346286ECA4B005EDF68 /* XPMonentsPublishViewController.h */,
E818E347286ECA4B005EDF68 /* XPMonentsPublishViewController.m */,
E8AB630B28ADD8C60023B0D2 /* XPMonentTopicContainerViewController.h */,
E8AB630C28ADD8C60023B0D2 /* XPMonentTopicContainerViewController.m */,
E8AB630B28ADD8C60023B0D2 /* XPMomentTopicContainerViewController.h */,
E8AB630C28ADD8C60023B0D2 /* XPMomentTopicContainerViewController.m */,
E8AB630E28ADD92D0023B0D2 /* XPMonentsTopicRecommondViewController.h */,
E8AB630F28ADD92D0023B0D2 /* XPMonentsTopicRecommondViewController.m */,
E8AB631428ADE2D20023B0D2 /* XPMonentsTopicLatestViewController.h */,
E8AB631528ADE2D20023B0D2 /* XPMonentsTopicLatestViewController.m */,
E8AB632228AE10310023B0D2 /* XPMoentsTopicListViewController.h */,
E8AB632328AE10310023B0D2 /* XPMoentsTopicListViewController.m */,
E8AB632A28AE19600023B0D2 /* XPMonentsMineViewController.h */,
E8AB632B28AE19600023B0D2 /* XPMonentsMineViewController.m */,
E8AB632228AE10310023B0D2 /* XPMomentsTopicListViewController.h */,
E8AB632328AE10310023B0D2 /* XPMomentsTopicListViewController.m */,
E8AB632A28AE19600023B0D2 /* XPMomentsMineViewController.h */,
E8AB632B28AE19600023B0D2 /* XPMomentsMineViewController.m */,
14EB640729A5BDDD00A4A00B /* XPMomentsSimpleDetailViewController.h */,
14EB640829A5BDDD00A4A00B /* XPMomentsSimpleDetailViewController.m */,
14EB640B29A5C16000A4A00B /* XPMomentsSimpleDetailNav.h */,
@@ -7830,8 +7830,8 @@
E81DCCC9282B63840039E5C5 /* Api */ = {
isa = PBXGroup;
children = (
E8098CA5282E00920090B9F0 /* Api+Monents.h */,
E8098CA6282E00920090B9F0 /* Api+Monents.m */,
E8098CA5282E00920090B9F0 /* Api+Moments.h */,
E8098CA6282E00920090B9F0 /* Api+Moments.m */,
);
path = Api;
sourceTree = "<group>";
@@ -7839,12 +7839,12 @@
E81DCCCA282B638B0039E5C5 /* Model */ = {
isa = PBXGroup;
children = (
1427212B29A757EC00C7C423 /* MonentsListInfoModel.h */,
1427212A29A757EC00C7C423 /* MonentsListInfoModel.m */,
E88749B4282B8FC600C3C7DB /* MonentsInfoModel.h */,
E88749B5282B8FC600C3C7DB /* MonentsInfoModel.m */,
E81A6544283519CA00F55894 /* MonentsTopicModel.h */,
E81A6545283519CA00F55894 /* MonentsTopicModel.m */,
1427212B29A757EC00C7C423 /* MomentsListInfoModel.h */,
1427212A29A757EC00C7C423 /* MomentsListInfoModel.m */,
E88749B4282B8FC600C3C7DB /* MomentsInfoModel.h */,
E88749B5282B8FC600C3C7DB /* MomentsInfoModel.m */,
E81A6544283519CA00F55894 /* MomentsTopicModel.h */,
E81A6545283519CA00F55894 /* MomentsTopicModel.m */,
E878B8562835F0D300E22DCF /* MonentsInteractiveModel.h */,
E878B8572835F0D300E22DCF /* MonentsInteractiveModel.m */,
E878B85C283640A500E22DCF /* MonentsUnReadModel.h */,
@@ -10577,10 +10577,10 @@
E8D7D747282BA1C20007D7BD /* Cell */ = {
isa = PBXGroup;
children = (
E8D7D749282BA1EC0007D7BD /* XPMonentsTableViewCell.h */,
E8D7D74A282BA1EC0007D7BD /* XPMonentsTableViewCell.m */,
E8098CAC282E07C00090B9F0 /* XPMonentsEmptyTableViewCell.h */,
E8098CAD282E07C00090B9F0 /* XPMonentsEmptyTableViewCell.m */,
E8D7D749282BA1EC0007D7BD /* XPMomentsTableViewCell.h */,
E8D7D74A282BA1EC0007D7BD /* XPMomentsTableViewCell.m */,
E8098CAC282E07C00090B9F0 /* XPMomentsEmptyTableViewCell.h */,
E8098CAD282E07C00090B9F0 /* XPMomentsEmptyTableViewCell.m */,
E81A654A28351D9900F55894 /* XPMonentsTopicCollectionViewCell.h */,
E81A654B28351D9900F55894 /* XPMonentsTopicCollectionViewCell.m */,
E878B8592835F3BF00E22DCF /* XPMonentsInteractiveTableViewCell.h */,
@@ -10602,18 +10602,18 @@
E8D7D748282BA1C90007D7BD /* SubViews */ = {
isa = PBXGroup;
children = (
E895017E282CAC49007E459A /* XPMonentsUserInfoView.h */,
E895017F282CAC49007E459A /* XPMonentsUserInfoView.m */,
E8950181282CAC6A007E459A /* XPMonentsPhotoView.h */,
E8950182282CAC6A007E459A /* XPMonentsPhotoView.m */,
E8950184282CAC80007E459A /* XPMonentsTooBarView.h */,
E8950185282CAC80007E459A /* XPMonentsTooBarView.m */,
E8098CAF282E86EF0090B9F0 /* XPMonentsContentView.h */,
E8098CB0282E86EF0090B9F0 /* XPMonentsContentView.m */,
E895018A282D0701007E459A /* XPMoentsTopicView.h */,
E895018B282D0701007E459A /* XPMoentsTopicView.m */,
E81A654728351B9500F55894 /* XPMonentsRecommendHeaderView.h */,
E81A654828351B9500F55894 /* XPMonentsRecommendHeaderView.m */,
E895017E282CAC49007E459A /* XPMomentsUserInfoView.h */,
E895017F282CAC49007E459A /* XPMomentsUserInfoView.m */,
E8950181282CAC6A007E459A /* XPMomentsPhotoView.h */,
E8950182282CAC6A007E459A /* XPMomentsPhotoView.m */,
E8950184282CAC80007E459A /* XPMomentsTooBarView.h */,
E8950185282CAC80007E459A /* XPMomentsTooBarView.m */,
E8098CAF282E86EF0090B9F0 /* XPMomentsContentView.h */,
E8098CB0282E86EF0090B9F0 /* XPMomentsContentView.m */,
E895018A282D0701007E459A /* XPMomentsTopicView.h */,
E895018B282D0701007E459A /* XPMomentsTopicView.m */,
E81A654728351B9500F55894 /* XPMomentsRecommendHeaderView.h */,
E81A654828351B9500F55894 /* XPMomentsRecommendHeaderView.m */,
E8B9842B28AB77F10022D026 /* XPMonentsPublishTopicView.h */,
E8B9842C28AB77F10022D026 /* XPMonentsPublishTopicView.m */,
E8B9842E28AB90200022D026 /* XPMoentsTopicListView.h */,
@@ -11543,7 +11543,7 @@
E87E62782A3F5907002F68C9 /* XPNewHomePartyTableViewCell.m in Sources */,
238B37B72AC55A2C00BFC9D5 /* XPTreasureFairySendRecordCell.m in Sources */,
E8A3539B28FE840A0014A784 /* XPWishGiftViewController.m in Sources */,
E8950183282CAC6A007E459A /* XPMonentsPhotoView.m in Sources */,
E8950183282CAC6A007E459A /* XPMomentsPhotoView.m in Sources */,
E8AC721E26F472BF007D6E91 /* XPMineSettingProtocol.h in Sources */,
E8F63CB4298B563D00B338BA /* Api+SayHello.m in Sources */,
23E9EA972A84C37000B792F2 /* XPMineUserInfoRecordedSoundVC.m in Sources */,
@@ -11563,7 +11563,7 @@
54C3895F2C2189DD00FD47B1 /* XPHomeMinePresenter.m in Sources */,
E8751E6E28A64F990056EF44 /* XPSailingEmptyTableViewCell.m in Sources */,
E87E625A2A3F560B002F68C9 /* XPHomeRecommendViewController.m in Sources */,
E8950189282CFFB1007E459A /* XPMonentsLayoutConfig.m in Sources */,
E8950189282CFFB1007E459A /* XPMomentsLayoutConfig.m in Sources */,
2357149B2BEE2AD1004C81D6 /* MsRoomMessagChatHallCell.m in Sources */,
E81061032987CFCE00B772F0 /* MessageSkillCardModel.m in Sources */,
9BD9A18727A120FD004186FE /* XPMineVisitorUnReadModel.m in Sources */,
@@ -11592,7 +11592,7 @@
E8A88D2D27E81E8700CA8837 /* RoomPKChooseUserModel.m in Sources */,
E82325F9274E2E42003A3332 /* Api+UserCard.m in Sources */,
238B37A62AC55A2C00BFC9D5 /* TreasureFairySendRecordModel.m in Sources */,
E8AB632F28AE19DE0023B0D2 /* XPMonentMinePresenter.m in Sources */,
E8AB632F28AE19DE0023B0D2 /* XPMomentMinePresenter.m in Sources */,
E85E7B042A4EB0D200B6D00A /* XPGuildIncomeDetailPresenter.m in Sources */,
54F4693E2C2A9D4E00A83655 /* XPMineMedalsTableViewCell.m in Sources */,
9BD9A17C27A0EE24004186FE /* XPMineVisitorViewController.m in Sources */,
@@ -11690,7 +11690,7 @@
239D0FE12C04850A002977CE /* MSRoomGameHeadView.m in Sources */,
2331C1AA2A60F32D00E1D940 /* XPCandyTreePresenter.m in Sources */,
E8AC723D26F4B6AA007D6E91 /* XPLoginBindPhoneResultViewController.m in Sources */,
E8AB632728AE13210023B0D2 /* XPMonentsTopicListPresenter.m in Sources */,
E8AB632728AE13210023B0D2 /* XPMomentsTopicListPresenter.m in Sources */,
239D0FB32BFD8C67002977CE /* MSRoomSetingBackdropCell.m in Sources */,
1427218729A75F6F00C7C423 /* MyHTTPConnection.m in Sources */,
23CEFB6C2AFB803B00576D89 /* PISwitchingEnvironmentVC.m in Sources */,
@@ -11787,7 +11787,7 @@
E83ABF03280EC90C00322EE4 /* ContentApplicationShareModel.m in Sources */,
9BA812E028BF6ABB00783EA7 /* Api+RedPacket.m in Sources */,
9BA3B40F293DD2F90071DF1C /* XPUpgradeView.m in Sources */,
E81A654928351B9500F55894 /* XPMonentsRecommendHeaderView.m in Sources */,
E81A654928351B9500F55894 /* XPMomentsRecommendHeaderView.m in Sources */,
E84B0E3F2727EDF6008818C6 /* XPRoomMessageTableViewCell.m in Sources */,
E82325FC274E4735003A3332 /* XPUserCardItemModel.m in Sources */,
E8C1CD6627D88EF800376F83 /* XPRoomFaceViewController.m in Sources */,
@@ -11916,7 +11916,7 @@
232EBBFF2BD7A25500E8CEAD /* MSParamsDecode.m in Sources */,
9B7D804D27537950003DAC0C /* MessageCell.m in Sources */,
23E9EAA62A84C97C00B792F2 /* XPMineUserInfoTagVC.m in Sources */,
E8950180282CAC49007E459A /* XPMonentsUserInfoView.m in Sources */,
E8950180282CAC49007E459A /* XPMomentsUserInfoView.m in Sources */,
18F404C927609A4300A6C548 /* MessagePresenter.m in Sources */,
9BC9DAEF27E33B3F009EE409 /* XPRoomGiftAnimationParser.m in Sources */,
E89DCF602900F4FB001647EC /* XPWishGiftEnterView.m in Sources */,
@@ -12196,7 +12196,7 @@
E8AC722C26F49580007D6E91 /* XPMineNotificaViewController.m in Sources */,
237B94BF2A984DA7007853E3 /* XPRoomTrumpetView.m in Sources */,
9B335B492925D8A00048A116 /* XPAnchorPKSelectTypeController.m in Sources */,
E8098CAE282E07C00090B9F0 /* XPMonentsEmptyTableViewCell.m in Sources */,
E8098CAE282E07C00090B9F0 /* XPMomentsEmptyTableViewCell.m in Sources */,
237700D72BC7D51400D661F1 /* UIButton+MSRTL.m in Sources */,
E85E7B4F2A4EB0D300B6D00A /* XPMineExchangeAuthorityVC.m in Sources */,
235714952BEDF517004C81D6 /* MsRoomMessagChatHallView.m in Sources */,
@@ -12207,7 +12207,7 @@
E85E7B172A4EB0D200B6D00A /* ClanMemberDetailInfoModel.m in Sources */,
54C3895C2C215F5100FD47B1 /* XPHomeMineViewController.m in Sources */,
9B044DA0282D32F700DE4859 /* MicroInviteExtModel.m in Sources */,
E8D7D74B282BA1EC0007D7BD /* XPMonentsTableViewCell.m in Sources */,
E8D7D74B282BA1EC0007D7BD /* XPMomentsTableViewCell.m in Sources */,
E8D34D5A28082357009C4835 /* UserGiftWallInfoModel.m in Sources */,
E82107842987E35300DE7040 /* MessageMonentsAutoModel.m in Sources */,
189DD52E26DE255300AB55B1 /* AppDelegate.m in Sources */,
@@ -12264,7 +12264,7 @@
9B8DE0E1289CF02900FB6EC2 /* XPGiftCompoundModel.m in Sources */,
23FF256E2ABC48810064E904 /* XPSessionMainViewController.m in Sources */,
E85E7B092A4EB0D200B6D00A /* XPGuildRemoveMemberPresenter.m in Sources */,
E8950186282CAC80007E459A /* XPMonentsTooBarView.m in Sources */,
E8950186282CAC80007E459A /* XPMomentsTooBarView.m in Sources */,
2357145A2BE8BC6C004C81D6 /* MSSessionPublicChatHallVC.m in Sources */,
E86507E5281A7D4D006951B0 /* MessageContentTweetView.m in Sources */,
E824544B26F5BBB800BE8163 /* XPMineModifPayPwdViewController.m in Sources */,
@@ -12293,7 +12293,7 @@
2357146E2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.m in Sources */,
238B37CD2AC55A2C00BFC9D5 /* XPTreasureFailyResultView.m in Sources */,
E824545126F5CE6E00BE8163 /* XPMineModifPayPwdPresenter.m in Sources */,
E8098CB1282E86EF0090B9F0 /* XPMonentsContentView.m in Sources */,
E8098CB1282E86EF0090B9F0 /* XPMomentsContentView.m in Sources */,
E85E3FA728B7A6F000268DC8 /* MessageContentMonentsView.m in Sources */,
234E50A82BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.m in Sources */,
E880B3AF278BE1D800A83B0D /* Api+AcrossRoomPK.m in Sources */,
@@ -12316,8 +12316,8 @@
18E7B33226F317A20064BC9B /* XPWebViewController.m in Sources */,
E8AEAEF927141CA30017FCE0 /* RoomHeaderView.m in Sources */,
545831A32C2AF01100364026 /* FifteenMicStageView.m in Sources */,
E8AB632428AE10310023B0D2 /* XPMoentsTopicListViewController.m in Sources */,
E8098CAA282E03B40090B9F0 /* XPMonentsRecommendPresenter.m in Sources */,
E8AB632428AE10310023B0D2 /* XPMomentsTopicListViewController.m in Sources */,
E8098CAA282E03B40090B9F0 /* XPMomentsRecommendPresenter.m in Sources */,
E8F63CBB298B648300B338BA /* SessionSayHelloListModel.m in Sources */,
9B1B729828002147003FACE9 /* XPMineFansTeamPresenter.m in Sources */,
23FF42702AA6C7CF0055733C /* XPNewHomeItemCell.m in Sources */,
@@ -12348,7 +12348,7 @@
E8F1559028125E2D00EE8C06 /* MessageAudioCenter.m in Sources */,
E8901CF628B38D89001E9A92 /* XPGraffitiGiftView.m in Sources */,
E89DA67527009ACD008483C1 /* XPMineRechargeNavView.m in Sources */,
E81A6546283519CA00F55894 /* MonentsTopicModel.m in Sources */,
E81A6546283519CA00F55894 /* MomentsTopicModel.m in Sources */,
E86E79D028A4E0B2006DAF48 /* ContentRistAlertModel.m in Sources */,
9BFE0D922899042600F53C24 /* XPTaskCompleteTipView.m in Sources */,
54C9A10D2C3D2FD300C6D970 /* XPMineDataGameMateTableViewCell.m in Sources */,
@@ -12367,7 +12367,7 @@
E84A2E9C2A52823900D6AF8A /* XPTextField.m in Sources */,
186A536926FC6F2E00D67B2C /* XPShareView.m in Sources */,
23CEFC602AFB8FC100576D89 /* RealViewCellModel.m in Sources */,
E8AB632C28AE19600023B0D2 /* XPMonentsMineViewController.m in Sources */,
E8AB632C28AE19600023B0D2 /* XPMomentsMineViewController.m in Sources */,
23CEFC5F2AFB8FC100576D89 /* BSLogTableViewController.m in Sources */,
236B2E4D2AA07D06003967A8 /* XPRoomLittleGameContainerView.m in Sources */,
E87AE8C1284E184300CAFBB3 /* RoomNewUserGreetModel.m in Sources */,
@@ -12415,7 +12415,7 @@
2331C1712A5EB71000E1D940 /* XPNobleCenterTableHeadView.m in Sources */,
2357148C2BECEE33004C81D6 /* MSSessionPublicChatHalTextCell.m in Sources */,
181D7F212727D9DB00B7C059 /* SocialStageView.m in Sources */,
E8AB630D28ADD8C60023B0D2 /* XPMonentTopicContainerViewController.m in Sources */,
E8AB630D28ADD8C60023B0D2 /* XPMomentTopicContainerViewController.m in Sources */,
23E9EA7C2A83977400B792F2 /* MessageContentTreasureFairyView.m in Sources */,
E8D4DE472940473500EC788D /* GiftTwelveStarFirstModel.m in Sources */,
E87DF4FB2A42CCDE009C1185 /* XPHomeRedommendCollectionViewCell.m in Sources */,
@@ -12476,7 +12476,7 @@
1427219529A75F6F00C7C423 /* DDNumber.m in Sources */,
236B2E5A2AA18E13003967A8 /* XPMineGameTableViewCell.m in Sources */,
E8DEC9AC2764A6CD0078CB70 /* XPRoomMoreMenuCollectionViewCell.m in Sources */,
E81DCCD0282B63FD0039E5C5 /* XPMonentsRecommendViewController.m in Sources */,
E81DCCD0282B63FD0039E5C5 /* XPMomentsRecommendViewController.m in Sources */,
9B7D804A2753783D003DAC0C /* SessionViewController.m in Sources */,
E85E7BA92A4EC99300B6D00A /* XPMineConfirmGiveDiamondView.m in Sources */,
54C9A1102C3D3E1700C6D970 /* XPMineGameMateOrderView.m in Sources */,
@@ -12554,7 +12554,7 @@
E8778AF02988EF0600CF139B /* XPSessionSayHelloViewController.m in Sources */,
187EEEE126E89BFB002833B2 /* AccountModel.m in Sources */,
235A451D2B04A452009753F5 /* PIRoomActivityWebCell.m in Sources */,
E8098CA7282E00920090B9F0 /* Api+Monents.m in Sources */,
E8098CA7282E00920090B9F0 /* Api+Moments.m in Sources */,
E896EFA92771AEEC00AD2CC1 /* XPMineAttentionTableViewCell.m in Sources */,
E8F1559328129EBA00EE8C06 /* ContentSecretaryModel.m in Sources */,
E85E7B342A4EB0D300B6D00A /* XPMineMainGuildListVC.m in Sources */,
@@ -12576,7 +12576,7 @@
18EE3FDF2750C1F700A452BF /* SessionListCell.m in Sources */,
9BD798B72926362F003E03E6 /* XPSessionListHeadItem.m in Sources */,
E80487652717DDD9008595F2 /* XPRoomMenuItem.m in Sources */,
E895018C282D0701007E459A /* XPMoentsTopicView.m in Sources */,
E895018C282D0701007E459A /* XPMomentsTopicView.m in Sources */,
E8A353A028FE84670014A784 /* XPWishGiftInfoView.m in Sources */,
E89BD7D4277D471100E31B19 /* XPRoomOnlineTableViewCell.m in Sources */,
1427219329A75F6F00C7C423 /* MultipartMessageHeader.m in Sources */,
@@ -12594,7 +12594,7 @@
E84B0E422727EE0A008818C6 /* XPRoomMessageHeaderView.m in Sources */,
238B37AC2AC55A2C00BFC9D5 /* TreasureFailryMessageModel.m in Sources */,
2331C1812A5ECD3800E1D940 /* XPNobleCenterPayCell.m in Sources */,
E852D73B286317F0001465ED /* XPMonentsDetailViewController.m in Sources */,
E852D73B286317F0001465ED /* XPMomentsDetailViewController.m in Sources */,
2331C1692A5EB71000E1D940 /* XPNobleSettingViewController.m in Sources */,
E85E7B392A4EB0D300B6D00A /* XPGuildChooseManagerRoomTableViewCell.m in Sources */,
239D0FAD2BFCB88D002977CE /* XPRoomAnchorRankEnterView.m in Sources */,
@@ -12605,7 +12605,7 @@
E84BF7E0277C869A00EF8877 /* XPRoomOnLineViewController.m in Sources */,
186A534826FC6ED900D67B2C /* TTAlertButtonConfig.m in Sources */,
236B2E422AA07D06003967A8 /* SudCommon.m in Sources */,
E88749B6282B8FC600C3C7DB /* MonentsInfoModel.m in Sources */,
E88749B6282B8FC600C3C7DB /* MomentsInfoModel.m in Sources */,
E89D60BA271D643A001F8895 /* Api+Room.m in Sources */,
E84843B227F5A0740050D365 /* XPRomPKResultTitleLabel.m in Sources */,
E80EC80F28ACD84000D133C5 /* QEmotion.m in Sources */,
@@ -12638,7 +12638,7 @@
189DD75926E6003C00AB55B1 /* Api.m in Sources */,
2331C1652A5EB71000E1D940 /* NobleRechargeModel.m in Sources */,
E87C0A9D27D9986700CB2241 /* XPRoomFaceCollectionFlowLayout.m in Sources */,
1427212C29A757EC00C7C423 /* MonentsListInfoModel.m in Sources */,
1427212C29A757EC00C7C423 /* MomentsListInfoModel.m in Sources */,
23E9EB152A84D02400B792F2 /* XPMineUserInfoEditPickView.m in Sources */,
9BA812D628BF52E100783EA7 /* XPRoomSendRedPacketViewController.m in Sources */,
E86E79D328A4E94E006DAF48 /* SessionRiskView.m in Sources */,
@@ -12908,6 +12908,7 @@
CODE_SIGN_IDENTITY = "Apple Development";
CODE_SIGN_STYLE = Automatic;
CURRENT_PROJECT_VERSION = 1;
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
DEVELOPMENT_TEAM = 48UCG35Q9W;
ENABLE_BITCODE = NO;
FRAMEWORK_SEARCH_PATHS = (

View File

@@ -37,7 +37,7 @@ NSString * const kInviteMemeberSuccess = @"a0ludml0ZU1lbWViZXJTdWNjZXNz";
NSString * const kUserFirstRegisterKey = @"kUserFirstRegisterKey";
///
NSString * const kLoginMethod = @"a0xvZ2luTWV0aG9k";
NSString * const kRequestRicket = @"a1JlcXVlc3RSaWNrZXQ=";
NSString * const kRequestTicket = @"a1JlcXVlc3RSaWNrZXQ=";
NSString * const kUpdateSoundInfo = @"kUpdateSoundInfo";
NSString * const kMineInfoDelTag = @"kMineInfoDelTag";
NSString * const kOpenRoomNotification = @"kOpenRoomNotification";///

View File

@@ -19,9 +19,9 @@
#import "GiftReceiveInfoModel.h"
#import "MessageMonentsModel.h"
///View
#import "XPMonentsDetailViewController.h"
#import "XPMomentsDetailViewController.h"
#import "XPMomentsSimpleDetailViewController.h"
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
@interface MessageContentMonentsView ()
///
@property (nonatomic,strong) NetImageView *monentsView;
@@ -30,7 +30,7 @@
///
@property (nonatomic,strong) UILabel *contentLabel;
///
@property (nonatomic,strong) MonentsInfoModel *monents;
@property (nonatomic,strong) MomentsInfoModel *monents;
@end
@implementation MessageContentMonentsView
@@ -73,8 +73,8 @@
}
- (void)tapBackView {
XPMonentsDetailViewController * detailView = [[XPMonentsDetailViewController alloc] init];
detailView.monentsInfo = self.monents;
XPMomentsDetailViewController * detailView = [[XPMomentsDetailViewController alloc] init];
detailView.momentsInfo = self.monents;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:detailView animated:YES];
}

View File

@@ -32,7 +32,7 @@
#import "XPMineDressUpViewController.h"
#import "XPDressUpShopViewController.h"
#import "XPMineLoginPasswordViewController.h"
#import "XPMonentTopicContainerViewController.h"
#import "XPMomentTopicContainerViewController.h"
#import "XPNobleCenterViewController.h"
///P
#import "RoomHostDelegate.h"
@@ -88,11 +88,11 @@
_messageText.attributedText = textModel.attributedText;
_contentInfo = textModel.contentInfo;
CGFloat oneHeight = [YMLocalizedString(@"MessageContentTweetView0") boundingRectWithSize:CGSizeMake(240, CGFLOAT_MAX) options:NSStringDrawingUsesFontLeading | NSStringDrawingUsesLineFragmentOrigin
attributes:[self messageTextAttibutes:[UIFont systemFontOfSize:16] color:[DJDKMIMOMColor mainTextColor]] context:nil].size.height + 2.5;
CGFloat titleHeight = [textModel.attributedText.string boundingRectWithSize:CGSizeMake(240, CGFLOAT_MAX) options:NSStringDrawingUsesFontLeading | NSStringDrawingUsesLineFragmentOrigin
attributes:[self messageTextAttibutes:[UIFont systemFontOfSize:16] color:[DJDKMIMOMColor mainTextColor]] context:nil].size.height;
// CGFloat oneHeight = [YMLocalizedString(@"MessageContentTweetView0") boundingRectWithSize:CGSizeMake(240, CGFLOAT_MAX) options:NSStringDrawingUsesFontLeading | NSStringDrawingUsesLineFragmentOrigin
// attributes:[self messageTextAttibutes:[UIFont systemFontOfSize:16] color:[DJDKMIMOMColor mainTextColor]] context:nil].size.height + 2.5;
//
// CGFloat titleHeight = [textModel.attributedText.string boundingRectWithSize:CGSizeMake(240, CGFLOAT_MAX) options:NSStringDrawingUsesFontLeading | NSStringDrawingUsesLineFragmentOrigin
// attributes:[self messageTextAttibutes:[UIFont systemFontOfSize:16] color:[DJDKMIMOMColor mainTextColor]] context:nil].size.height;
// if (titleHeight <= oneHeight * 2) {
// [self.messageText mas_updateConstraints:^(MASConstraintMaker *make) {
// make.height.mas_equalTo(titleHeight + 5);
@@ -234,7 +234,7 @@
break;
case SecretaryRouterType_Square_Topic:
{
XPMonentTopicContainerViewController *topicVC = [[XPMonentTopicContainerViewController alloc] init];
XPMomentTopicContainerViewController *topicVC = [[XPMomentTopicContainerViewController alloc] init];
topicVC.worldId = value;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:topicVC animated:YES];
}

View File

@@ -8,9 +8,9 @@
#import "MessageBaseModel.h"
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel;
@class MomentsInfoModel;
@interface MessageMonentsModel : MessageBaseModel
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
@property (nonatomic,strong) MomentsInfoModel *monentsInfo;
///图片的链接
@property (nonatomic,strong) NSString *imageUrl;
///标题

View File

@@ -7,7 +7,7 @@
#import "MessageMonentsModel.h"
#import "AttachmentModel.h"
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
#import "NSObject+MJExtension.h"
@implementation MessageMonentsModel
- (instancetype)initWithMessage:(NIMMessage *)message {
@@ -16,7 +16,7 @@
NIMCustomObject *obj = (NIMCustomObject *)message.messageObject;
AttachmentModel * attach = obj.attachment;
NSDictionary * dic = attach.data;
self.monentsInfo = [MonentsInfoModel modelWithDictionary:dic];
self.monentsInfo = [MomentsInfoModel modelWithDictionary:dic];
self.imageUrl = dic[@"imageUrl"];
NSString * nick = self.monentsInfo.nick;
if (nick.length > 6) {

View File

@@ -43,7 +43,7 @@
NSString * uid = [AccountInfoStorage instance].getUid;
[Api collectRoom:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] collectRoomSuccess];
}] roomUid:roomUid uid:uid type:type roomUids:NULL];
}] roomUid:roomUid uid:uid type:type roomUids:@""];
}
@end

View File

@@ -13,9 +13,9 @@
#import "MineSkillCardListInfoModel.h"
#import "XPMineUserDataProtocol.h"
#import "UserInfoModel.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "Api+Room.h"
#import "XPMonentsMineProtocol.h"
#import "XPMomentsMineProtocol.h"
#import "Api+GameOrder.h"
#import "XPMineGamePartnerInfoModel.h"
@@ -27,9 +27,9 @@
RACSubject* owner = [RACSubject subject];
RACSubject* currentUser = [RACSubject subject];
@kWeakify(self);
// @kWeakify(self);
[[RACSignal combineLatest:@[owner, currentUser] reduce:^id(ClanDetailInfoModel* ownerClanInfo, ClanDetailInfoModel* currentUserClanInfo){
@kStrongify(self);
// @kStrongify(self);
// [[self getView] getClanDetailInfoSuccess:ownerClanInfo currentUserClanInfo:currentUserClanInfo];
return nil;
}] subscribeError:^(NSError * _Nullable error) {
@@ -84,9 +84,9 @@
@kWeakify(self);
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * statusStr = status ? @"1" : @"0";
[Api monentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
@kStrongify(self);
[[self getView] likeMonentsSuccess:dynamicId status:status];
[[self getView] likeMomentsSuccess:dynamicId status:status];
} showLoading:YES] dynamicId:dynamicId uid:uid status:statusStr likedUid:likedUid worldId:worldId];
}
@@ -96,14 +96,14 @@
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
@kWeakify(self);
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
@kStrongify(self);
[[self getView] deleteMonentsSuccess:dynamicId];
[[self getView] deleteMomentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}
- (void)requesstShieldingWtihType:(NSString *)type objId:(NSString *)objId{
@kWeakify(self);
[Api requesstShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api requestShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
@kStrongify(self);
[[self getView] requesstShieldingSuccess:objId];
}] type:type objId:objId];

View File

@@ -7,7 +7,7 @@
#import "MvpViewController.h"
#import <JXPagingView/JXPagerView.h>
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
#import "XPMineGamePartnerInfoModel.h"
@class MedalModel, UserGiftWallInfoModel;
@@ -29,7 +29,7 @@ NS_ASSUME_NONNULL_BEGIN
@property (nonatomic,copy) NSString *userUid;
///用户信息
@property (nonatomic, strong) UserInfoModel *userInfo;
@property (nonatomic, strong) NSArray<MonentsInfoModel *>*dynamicInfo;
@property (nonatomic, strong) NSArray<MomentsInfoModel *>*dynamicInfo;
@property (nonatomic, strong) MedalModel *medalInfo;
@property (nonatomic, strong) NSArray<UserGiftWallInfoModel *> *giftWall;
@property (nonatomic, strong) NSArray<UserGiftWallInfoModel *> *luckyGiftWall;

View File

@@ -10,23 +10,23 @@
#import <Masonry/Masonry.h>
///Tool
#import "AccountInfoStorage.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
///View
#import "XPMineDataGiftTableViewCell.h"
#import "XPMonentsTableViewCell.h"
#import "XPMonentsEmptyTableViewCell.h"
#import "XPMomentsTableViewCell.h"
#import "XPMomentsEmptyTableViewCell.h"
///Model
#import "UserInfoModel.h"
#import "MineSkillCardListInfoModel.h"
///P
#import "XPMineUserDataPresenter.h"
#import "XPMineUserDataProtocol.h"
#import "XPMonentsMineProtocol.h"
#import "XPMomentsMineProtocol.h"
///View
#import "XPMineUserInfoGiftWallViewController.h"
#import "XPMineGuildViewController.h"
#import "XPMonentsDetailViewController.h"
#import "XPMomentsDetailViewController.h"
#import "XPMineUserInfoAlbumViewController.h"
#import "XPMineDataGiftTableViewCell.h"
@@ -145,7 +145,7 @@ typedef enum : NSUInteger {
@end
@interface XPMineUserDataViewController ()<UITableViewDelegate, UITableViewDataSource, XPMineDataGiftTableViewCellDelegate, XPMonentsTableViewCellDelegate, XPMonentsMineProtocol, XPMonentsDetailViewControllerDelegate>
@interface XPMineUserDataViewController ()<UITableViewDelegate, UITableViewDataSource, XPMineDataGiftTableViewCellDelegate, XPMomentsTableViewCellDelegate, XPMomentsMineProtocol, XPMomentsDetailViewControllerDelegate>
///
@property (nonatomic,strong) UITableView *tableView;
@@ -156,7 +156,7 @@ typedef enum : NSUInteger {
@property (nonatomic, copy) void(^scrollCallback)(UIScrollView *scrollView);
///
@property (nonatomic,strong) NSMutableArray<MonentsInfoModel *> *datasource;
@property (nonatomic,strong) NSMutableArray<MomentsInfoModel *> *datasource;
//@property (nonatomic,strong) UIView *headView;
@property (nonatomic, strong) UIButton *giftsExpandButton;
@property (nonatomic, strong) UIButton *luckyGiftsExpandButton;
@@ -422,7 +422,7 @@ typedef enum : NSUInteger {
}
break;
default:
return [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
return [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
break;
}
}
@@ -431,49 +431,49 @@ typedef enum : NSUInteger {
if(indexPath.section == 0)return;
[tableView deselectRowAtIndexPath:indexPath animated:YES];
if (self.datasource.count > 0) {
XPMonentsDetailViewController * detailVC = [[XPMonentsDetailViewController alloc] init];
MonentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
XPMomentsDetailViewController * detailVC = [[XPMomentsDetailViewController alloc] init];
MomentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
if(monentsInfo.dynamicId == nil){
return;
}
detailVC.monentsInfo = monentsInfo;
detailVC.momentsInfo = monentsInfo;
detailVC.delegate = self;
[self.navigationController pushViewController:detailVC animated:YES];
}
}
#pragma mark - XPMonentsTableViewCellDelegate
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClickLike:(MonentsInfoModel *)monentsInfo {
#pragma mark - XPMomentsTableViewCellDelegate
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClickLike:(MomentsInfoModel *)monentsInfo {
if(monentsInfo.dynamicId == nil){
[self showErrorToast:YMLocalizedString(@"XPMineUserDataViewController2")];
return;
}
[self.presenter likeMonent:monentsInfo.dynamicId status:!monentsInfo.isLike likedUid:monentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicCommon:(MonentsInfoModel *)monentsInfo{
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicCommon:(MomentsInfoModel *)monentsInfo{
if(monentsInfo.dynamicId == nil){
[self showErrorToast:YMLocalizedString(@"XPMineUserDataViewController3")];
return;
}
XPMonentsDetailViewController * detailVC = [[XPMonentsDetailViewController alloc] init];
detailVC.monentsInfo = monentsInfo;
XPMomentsDetailViewController * detailVC = [[XPMomentsDetailViewController alloc] init];
detailVC.momentsInfo = monentsInfo;
detailVC.delegate = self;
[self.navigationController pushViewController:detailVC animated:YES];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicDelete:(MonentsInfoModel *)monentsInfo {
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicDelete:(MomentsInfoModel *)monentsInfo {
[TTPopup alertWithMessage:YMLocalizedString(@"XPMonentsMineViewController0") confirmHandler:^{
[self.presenter deleteMonents:monentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
} cancelHandler:^{
}];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicShielding:(nonnull MonentsInfoModel *)monentsInfo{
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicShielding:(nonnull MomentsInfoModel *)monentsInfo{
[self showLoading];
[self.presenter requesstShieldingWtihType:@"0" objId:monentsInfo.dynamicId];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicFold:(MonentsInfoModel *)monentsInfo {
__block MonentsInfoModel * monentsInfos;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicFold:(MomentsInfoModel *)monentsInfo {
__block MomentsInfoModel * monentsInfos;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.dynamicId.integerValue) {
monentsInfos = obj;
*stop = YES;
@@ -485,10 +485,10 @@ typedef enum : NSUInteger {
}
}
#pragma mark - XPMonentsDetailViewControllerDelegate
- (void)xPMonentsDetailViewController:(XPMonentsDetailViewController *)view deleteMonents:(NSString *)dynamicId {
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
#pragma mark - XPMomentsDetailViewControllerDelegate
- (void)XPMomentsDetailViewController:(XPMomentsDetailViewController *)view deleteMoments:(NSString *)dynamicId {
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == dynamicId.integerValue) {
deleteInfo = obj;
}
@@ -500,12 +500,12 @@ typedef enum : NSUInteger {
}
}
#pragma mark - XPMonentsMineProtocol
#pragma mark - XPMomentsMineProtocol
- (void)requesstShieldingSuccess:(NSString *)monentsInfo{
[self hideHUD];
[self showSuccessToast:YMLocalizedString(@"XPMonentsMineViewController2")];
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
[self showSuccessToast:YMLocalizedString(@"XPMomentsMineViewController2")];
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.integerValue) {
deleteInfo = obj;
}
@@ -516,8 +516,8 @@ typedef enum : NSUInteger {
[self.tableView reloadData];
}
}
- (void)likeMonentsSuccess:(NSString *)dynamicId status:(BOOL)status {
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
- (void)likeMomentsSuccess:(NSString *)dynamicId status:(BOOL)status {
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if ([obj.dynamicId isEqualToString:dynamicId]) {
NSInteger likeCount = obj.likeCount.integerValue;
if (status) {
@@ -534,10 +534,10 @@ typedef enum : NSUInteger {
[self.tableView reloadData];
}
- (void)deleteMonentsSuccess:(NSString *)monentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMonentsMineViewController1")];
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
- (void)deleteMomentsSuccess:(NSString *)monentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMomentsMineViewController1")];
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.integerValue) {
deleteInfo = obj;
}
@@ -590,7 +590,7 @@ typedef enum : NSUInteger {
[self.tableView reloadData];
} uid:userInfo.uid];
}
- (void)setDynamicInfo:(NSArray<MonentsInfoModel *> *)dynamicInfo {
- (void)setDynamicInfo:(NSArray<MomentsInfoModel *> *)dynamicInfo {
[self.datasource removeAllObjects];
[self.datasource addObjectsFromArray:dynamicInfo];
[self.tableView reloadData];
@@ -620,7 +620,7 @@ typedef enum : NSUInteger {
forCellReuseIdentifier:NSStringFromClass([XPMineMedalsTableViewCell class])];
[_tableView registerClass:[XPMineGiftsTableViewCell class]
forCellReuseIdentifier:NSStringFromClass([XPMineGiftsTableViewCell class])];
[_tableView registerClass:[XPMonentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
[_tableView registerClass:[XPMomentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
[_tableView registerClass:[XPMineDataGiftTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMineDataGiftTableViewCell class])];
if (isMSRTL()) {
_tableView.semanticContentAttribute = UISemanticContentAttributeForceRightToLeft;
@@ -629,7 +629,7 @@ typedef enum : NSUInteger {
return _tableView;
}
- (NSMutableArray<MonentsInfoModel *> *)datasource {
- (NSMutableArray<MomentsInfoModel *> *)datasource {
if (!_datasource) {
_datasource = [NSMutableArray array];
}

View File

@@ -42,7 +42,7 @@
#import "SessionViewController.h"
#import "XPRoomViewController.h"
#import "XPMineUserDataViewController.h"
#import "XPMonentsMineViewController.h"
#import "XPMomentsMineViewController.h"
#import "XPGiftUserDataViewController.h"
#import "XPRoomMiniManager.h"

View File

@@ -70,7 +70,7 @@
#import "XPGameOrdersListViewController.h"
UIKIT_EXTERN NSString *kRequestRicket;
UIKIT_EXTERN NSString *kRequestTicket;
@interface XPMineViewController ()<UITableViewDelegate, UITableViewDataSource, XPMineProtocol, XPMineHeadItemTableViewCellDelegate, XPMineHeadViewDelegate, XPHomeBannerTableViewCellDelegate>
///

View File

@@ -7,13 +7,13 @@
#import "MvpViewController.h"
#import <JXPagingView/JXPagerView.h>
@class MonentsInfoModel;
@class MomentsInfoModel;
NS_ASSUME_NONNULL_BEGIN
@interface XPMomentUserDataViewController : MvpViewController<JXPagerViewListViewDelegate>
@property (nonatomic,strong) NSArray<MonentsInfoModel *>*dynamicInfo;
@property (nonatomic,strong) NSArray<MomentsInfoModel *>*dynamicInfo;
@end

View File

@@ -7,19 +7,19 @@
#import "XPMomentUserDataViewController.h"
#import "XPMonentsDetailViewController.h"
#import "XPMomentsDetailViewController.h"
#import "XPMineUserDataPresenter.h"
#import "XPMonentsMineProtocol.h"
#import "XPMomentsMineProtocol.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMonentsEmptyTableViewCell.h"
#import "XPMonentsTableViewCell.h"
#import "MonentsInfoModel.h"
#import "XPMomentsLayoutConfig.h"
#import "XPMomentsEmptyTableViewCell.h"
#import "XPMomentsTableViewCell.h"
#import "MomentsInfoModel.h"
@interface XPMomentUserDataViewController () <UITableViewDelegate, UITableViewDataSource, XPMonentsTableViewCellDelegate, XPMonentsMineProtocol, XPMonentsDetailViewControllerDelegate>
@interface XPMomentUserDataViewController () <UITableViewDelegate, UITableViewDataSource, XPMomentsTableViewCellDelegate, XPMomentsMineProtocol, XPMomentsDetailViewControllerDelegate>
@property (nonatomic,strong) NSMutableArray<MonentsInfoModel *> *datasource;
@property (nonatomic,strong) NSMutableArray<MomentsInfoModel *> *datasource;
@property (nonatomic,strong) UITableView *tableView;
@property (nonatomic,strong) UIView *headView;
@property (nonatomic, copy) void(^scrollCallback)(UIScrollView *scrollView);
@@ -39,7 +39,7 @@
return [[XPMineUserDataPresenter alloc] init];
}
- (void)setDynamicInfo:(NSArray<MonentsInfoModel *> *)dynamicInfo {
- (void)setDynamicInfo:(NSArray<MomentsInfoModel *> *)dynamicInfo {
[self.datasource removeAllObjects];
[self.datasource addObjectsFromArray:dynamicInfo];
[self.tableView reloadData];
@@ -77,8 +77,8 @@
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.datasource.count > 0) {
MonentsInfoModel * momentInfo= [self.datasource xpSafeObjectAtIndex:indexPath.row];
[XPMonentsLayoutConfig getNewlayoutMonentsModelWithDynamic:momentInfo];
MomentsInfoModel * momentInfo= [self.datasource xpSafeObjectAtIndex:indexPath.row];
[XPMomentsLayoutConfig getNewLayoutMomentsModelWithDynamic:momentInfo];
if(momentInfo.content.length == 0){
return momentInfo.rowHeight + 20;
}
@@ -101,14 +101,14 @@
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.datasource.count > 0) {
XPMonentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"XPMonentsDynamicTableViewCell" forIndexPath:indexPath];
MonentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
XPMomentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:@"XPMomentsDynamicTableViewCell" forIndexPath:indexPath];
MomentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
cell.delegate = self;
cell.mineMonentsInfo = monentsInfo;
cell.mineMomentsInfo = monentsInfo;
cell.isFillet = indexPath.row == self.datasource.count - 1;
return cell;
}
XPMonentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
XPMomentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
return cell;
}
@@ -116,49 +116,49 @@
if(indexPath.section == 0)return;
[tableView deselectRowAtIndexPath:indexPath animated:YES];
if (self.datasource.count > 0) {
XPMonentsDetailViewController * detailVC = [[XPMonentsDetailViewController alloc] init];
MonentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
XPMomentsDetailViewController * detailVC = [[XPMomentsDetailViewController alloc] init];
MomentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
if(monentsInfo.dynamicId == nil){
return;
}
detailVC.monentsInfo = monentsInfo;
detailVC.momentsInfo = monentsInfo;
detailVC.delegate = self;
[self.navigationController pushViewController:detailVC animated:YES];
}
}
#pragma mark - XPMonentsTableViewCellDelegate
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClickLike:(MonentsInfoModel *)monentsInfo {
#pragma mark - XPMomentsTableViewCellDelegate
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClickLike:(MomentsInfoModel *)monentsInfo {
if(monentsInfo.dynamicId == nil){
[self showErrorToast:YMLocalizedString(@"XPMineUserDataViewController2")];
return;
}
[self.presenter likeMonent:monentsInfo.dynamicId status:!monentsInfo.isLike likedUid:monentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicCommon:(MonentsInfoModel *)monentsInfo{
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicCommon:(MomentsInfoModel *)monentsInfo{
if(monentsInfo.dynamicId == nil){
[self showErrorToast:YMLocalizedString(@"XPMineUserDataViewController3")];
return;
}
XPMonentsDetailViewController * detailVC = [[XPMonentsDetailViewController alloc] init];
detailVC.monentsInfo = monentsInfo;
XPMomentsDetailViewController * detailVC = [[XPMomentsDetailViewController alloc] init];
detailVC.momentsInfo = monentsInfo;
detailVC.delegate = self;
[self.navigationController pushViewController:detailVC animated:YES];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicDelete:(MonentsInfoModel *)monentsInfo {
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicDelete:(MomentsInfoModel *)monentsInfo {
[TTPopup alertWithMessage:YMLocalizedString(@"XPMonentsMineViewController0") confirmHandler:^{
[self.presenter deleteMonents:monentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
} cancelHandler:^{
}];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicShielding:(nonnull MonentsInfoModel *)monentsInfo{
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicShielding:(nonnull MomentsInfoModel *)monentsInfo{
[self showLoading];
[self.presenter requesstShieldingWtihType:@"0" objId:monentsInfo.dynamicId];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicFold:(MonentsInfoModel *)monentsInfo {
__block MonentsInfoModel * monentsInfos;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicFold:(MomentsInfoModel *)monentsInfo {
__block MomentsInfoModel * monentsInfos;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.dynamicId.integerValue) {
monentsInfos = obj;
*stop = YES;
@@ -170,10 +170,10 @@
}
}
#pragma mark - XPMonentsDetailViewControllerDelegate
- (void)xPMonentsDetailViewController:(XPMonentsDetailViewController *)view deleteMonents:(NSString *)dynamicId {
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
#pragma mark - XPMomentsDetailViewControllerDelegate
- (void)XPMomentsDetailViewController:(XPMomentsDetailViewController *)view deleteMoments:(NSString *)dynamicId {
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == dynamicId.integerValue) {
deleteInfo = obj;
}
@@ -185,12 +185,12 @@
}
}
#pragma mark - XPMonentsMineProtocol
#pragma mark - XPMomentsMineProtocol
- (void)requesstShieldingSuccess:(NSString *)monentsInfo{
[self hideHUD];
[self showSuccessToast:YMLocalizedString(@"XPMonentsMineViewController2")];
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
[self showSuccessToast:YMLocalizedString(@"XPMomentsMineViewController2")];
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.integerValue) {
deleteInfo = obj;
}
@@ -201,8 +201,8 @@
[self.tableView reloadData];
}
}
- (void)likeMonentsSuccess:(NSString *)dynamicId status:(BOOL)status {
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
- (void)likeMomentsSuccess:(NSString *)dynamicId status:(BOOL)status {
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if ([obj.dynamicId isEqualToString:dynamicId]) {
NSInteger likeCount = obj.likeCount.integerValue;
if (status) {
@@ -219,10 +219,10 @@
[self.tableView reloadData];
}
- (void)deleteMonentsSuccess:(NSString *)monentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMonentsMineViewController1")];
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
- (void)deleteMomentsSuccess:(NSString *)monentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMomentsMineViewController1")];
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.integerValue) {
deleteInfo = obj;
}
@@ -245,13 +245,13 @@
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
[_tableView registerClass:[XPMonentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
[_tableView registerClass:[XPMonentsTableViewCell class] forCellReuseIdentifier:@"XPMonentsDynamicTableViewCell"];
[_tableView registerClass:[XPMomentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
[_tableView registerClass:[XPMomentsTableViewCell class] forCellReuseIdentifier:@"XPMomentsDynamicTableViewCell"];
}
return _tableView;
}
- (NSMutableArray<MonentsInfoModel *> *)datasource {
- (NSMutableArray<MomentsInfoModel *> *)datasource {
if (!_datasource) {
_datasource = [NSMutableArray array];
}

View File

@@ -9,39 +9,39 @@
NS_ASSUME_NONNULL_BEGIN
@interface Api (Monents)
@interface Api (Moments)
/// 朋友圈动态推荐列表
/// @param completion 完成
/// @param page 当前的页数
/// @param pageSize 一页的个数
/// @param types 类型 0,2
+ (void)monentsRecommendList:(HttpRequestHelperCompletion)completion page:(NSString *)page pageSize:(NSString *)pageSize types:(NSString *)types;
+ (void)momentsRecommendList:(HttpRequestHelperCompletion)completion page:(NSString *)page pageSize:(NSString *)pageSize types:(NSString *)types;
/// 朋友圈动态最新列表
/// @param completion 完成
/// @param dynamicId 最新动态的id
/// @param pageSize 一页的个数
/// @param types 类型 0,2
+ (void)monentsLatestList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize types:(NSString *)types;
+ (void)momentsLatestList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize types:(NSString *)types;
/// 朋友圈动态关注列表
/// @param completion 完成
/// @param dynamicId 最新动态的id
/// @param pageSize 一页的个数
/// @param types 类型 0,2
+ (void)monentsFollowerList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize types:(NSString *)types;
+ (void)momentsFollowerList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize types:(NSString *)types;
/// 互动消息列表
/// @param completion 完成
/// @param dynamicId 动态的id
/// @param pageSize 一页的个数
/// @param uid 类型 uid
+ (void)monentsInteractiveList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize uid:(NSString *)uid;
+ (void)momentsInteractiveList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize uid:(NSString *)uid;
/// 清空互动消息
/// @param complection 完成
/// @param Completion 完成
/// @param uid 用户的uid
+ (void)monentsInteractiveClear:(HttpRequestHelperCompletion)complection uid:(NSString *)uid;
+ (void)momentsInteractiveClear:(HttpRequestHelperCompletion)Completion uid:(NSString *)uid;
/// 获取话题列表
/// @param completion 完成
@@ -49,7 +49,7 @@ NS_ASSUME_NONNULL_BEGIN
/// @param page 当前的页数
/// @param pageSize 一页多少个
/// @param worldTypeId 类型0
+ (void)monentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid page:(NSString *)page pageSize:(NSString *)pageSize worldTypeId:(NSString *)worldTypeId;
+ (void)momentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid page:(NSString *)page pageSize:(NSString *)pageSize worldTypeId:(NSString *)worldTypeId;
/// 分享动态
/// @param completion 完成
@@ -57,7 +57,7 @@ NS_ASSUME_NONNULL_BEGIN
/// @param uid 动态发布者的uid
/// @param worldId 动态的话题id
/// @param shareUid 分享者的uid
+ (void)userShareMonents:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid worldId:(NSString *)worldId shareUid:(NSString *)shareUid;
+ (void)userShareMoments:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid worldId:(NSString *)worldId shareUid:(NSString *)shareUid;
/// 点赞动态
@@ -67,21 +67,21 @@ NS_ASSUME_NONNULL_BEGIN
/// @param status 0 取消点赞 1 点赞
/// @param likedUid 点赞人的uid
/// @param worldId 世界的id
+ (void)monentsLike:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid status:(NSString *)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId;
+ (void)momentsLike:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid status:(NSString *)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId;
/// 动态详情
/// @param completion 完成
/// @param dynamicId 动态的id
/// @param worldId 话题的id
/// @param uid 用户的uid
+ (void)monentsDetail:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId worldId:(NSString *)worldId uid:(NSString *)uid;
+ (void)momentsDetail:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId worldId:(NSString *)worldId uid:(NSString *)uid;
/// 评论动态
/// @param completion 完成
/// @param uid 用户的uid
/// @param dynamicId 动态的id
/// @param content 内容
+ (void)monentDetailCommon:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId content:(NSString *)content;
+ (void)momentDetailCommon:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId content:(NSString *)content;
/// 回复评论
/// @param completion 完成
@@ -89,7 +89,7 @@ NS_ASSUME_NONNULL_BEGIN
/// @param dynamicId 动态的id
/// @param content 内容
/// @param commentId 评论的id
+ (void)replyMonentsDetailCommon:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId content:(NSString *)content commentId:(NSString *)commentId;
+ (void)replyMomentsDetailCommon:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId content:(NSString *)content commentId:(NSString *)commentId;
/// 请求评论列表
/// @param completion 完成
@@ -97,7 +97,7 @@ NS_ASSUME_NONNULL_BEGIN
/// @param uid uid
/// @param pageSize 一页多少个
/// @param timestamp 上一个评论的时间戳
+ (void)monentsCommentList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid pageSize:(NSString *)pageSize timestamp:(NSString *)timestamp;
+ (void)momentsCommentList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid pageSize:(NSString *)pageSize timestamp:(NSString *)timestamp;
/// 评论回复列表
/// @param completion 完成
@@ -106,14 +106,14 @@ NS_ASSUME_NONNULL_BEGIN
/// @param pageSize 每页多少个
/// @param commentId 评论的id
/// @param timestamp 上条回复的时间
+ (void)monentsCommentReplyList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid pageSize:(NSString *)pageSize commentId:(NSString *)commentId timestamp:(NSString *)timestamp;
+ (void)momentsCommentReplyList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid pageSize:(NSString *)pageSize commentId:(NSString *)commentId timestamp:(NSString *)timestamp;
/// 获取可以选择的话题列表
/// @param completion 完成
/// @param uid 用户的uid
/// @param type 类型
/// @param page 当前的页数
+ (void)monentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid type:(NSString *)type page:(NSString *)page;
+ (void)momentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid type:(NSString *)type page:(NSString *)page;
/// 发布动态
/// @param completion 完成
@@ -122,7 +122,7 @@ NS_ASSUME_NONNULL_BEGIN
/// @param worldId 话题的id
/// @param content 内容
/// @param resList 发布的图片
+ (void)monentsPublish:(HttpRequestHelperCompletion)completion uid:(NSString *)uid type:(NSString *)type worldId:(NSString *)worldId content:(NSString *)content resList:(NSArray *)resList;
+ (void)momentsPublish:(HttpRequestHelperCompletion)completion uid:(NSString *)uid type:(NSString *)type worldId:(NSString *)worldId content:(NSString *)content resList:(NSArray *)resList;
/// 获取动态话题最新记录
/// @param completion 完成
@@ -131,7 +131,7 @@ NS_ASSUME_NONNULL_BEGIN
/// @param types l类型
/// @param worldId 话题的id
/// @param pageSize 一页多少个
+ (void)monentsTopicLatestList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId types:(NSString *)types worldId:(NSString *)worldId pageSize:(NSString *)pageSize;
+ (void)momentsTopicLatestList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId types:(NSString *)types worldId:(NSString *)worldId pageSize:(NSString *)pageSize;
/// 获取动态话题推荐记录
/// @param completion 完成
@@ -140,37 +140,29 @@ NS_ASSUME_NONNULL_BEGIN
/// @param types l类型
/// @param worldId 话题的id
/// @param pageSize 一页多少个
+ (void)monentsTopicRecommendList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId types:(NSString *)types worldId:(NSString *)worldId pageSize:(NSString *)pageSize;
+ (void)momentsTopicRecommendList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId types:(NSString *)types worldId:(NSString *)worldId pageSize:(NSString *)pageSize;
/// 获取动态话题详情
/// @param completion 完成
/// @param worldId 话题id
/// @param uid 用户uid
+ (void)monentsTopicDetailInfo:(HttpRequestHelperCompletion)completion worldId:(NSString *)worldId uid:(NSString *)uid;
/// 获取动态话题列表
/// @param completion 完成
/// @param uid uid
/// @param page 当前的页数
/// @param pageSize 一页多少个
/// @param worldTypeId 类型
+ (void)moentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid page:(NSString *)page pageSize:(NSString *)pageSize worldTypeId:(NSString *)worldTypeId;
+ (void)momentsTopicDetailInfo:(HttpRequestHelperCompletion)completion worldId:(NSString *)worldId uid:(NSString *)uid;
/// 删除动态
/// @param completion 完成
/// @param uid uid
/// @param dynamicId 动态的id
/// @param worldId 话题的id
+ (void)monentsDelete:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId worldId:(NSString *)worldId;
+ (void)momentsDelete:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId worldId:(NSString *)worldId;
/// 获取动态没有阅读数
/// @param completion 完成
/// @param uid uid
+ (void)monentsUnReadCount:(HttpRequestHelperCompletion)completion uid:(NSString *)uid;
+ (void)momentsUnReadCount:(HttpRequestHelperCompletion)completion uid:(NSString *)uid;
/// 屏蔽
/// @param completion 完成
/// @param type type为0 => 屏蔽动态, objId 为 动态id, type为1 => 屏蔽房间, objId 为 用户uid
+ (void)requesstShielding:(HttpRequestHelperCompletion)completion type:(NSString *)type objId:(NSString *)objId;
+ (void)requestShielding:(HttpRequestHelperCompletion)completion type:(NSString *)type objId:(NSString *)objId;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,18 +5,18 @@
// Created by YUMI on 2022/5/13.
//
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "NSObject+MJExtension.h"
#import "NSMutableDictionary+Saft.h"
#import <Base64/MF_Base64Additions.h>
@implementation Api (Monents)
@implementation Api (Moments)
///
/// @param completion
/// @param page
/// @param pageSize
/// @param types 0,2
+ (void)monentsRecommendList:(HttpRequestHelperCompletion)completion page:(NSString *)page pageSize:(NSString *)pageSize types:(NSString *)types {
+ (void)momentsRecommendList:(HttpRequestHelperCompletion)completion page:(NSString *)page pageSize:(NSString *)pageSize types:(NSString *)types {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9zcXVhcmUvcmVjb21tZW5kRHluYW1pY3M="];///dynamic/square/recommendDynamics
[self makeRequest:fang method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, page, pageSize, types, nil];
}
@@ -26,7 +26,7 @@
/// @param dynamicId id
/// @param pageSize
/// @param types 0,2
+ (void)monentsLatestList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize types:(NSString *)types {
+ (void)momentsLatestList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize types:(NSString *)types {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9zcXVhcmUvbGF0ZXN0RHluYW1pY3M="];///dynamic/square/latestDynamics
[self makeRequest:fang method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, dynamicId, pageSize, types, nil];
}
@@ -36,7 +36,7 @@
/// @param dynamicId id
/// @param pageSize
/// @param types 0,2
+ (void)monentsFollowerList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize types:(NSString *)types {
+ (void)momentsFollowerList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize types:(NSString *)types {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9zcXVhcmUvZm9sbG93ZXJEeW5hbWljcw=="];///dynamic/square/followerDynamics
[self makeRequest:fang method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, dynamicId, pageSize, types, nil];
}
@@ -46,7 +46,7 @@
/// @param dynamicId id
/// @param pageSize
/// @param uid uid
+ (void)monentsInteractiveList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize uid:(NSString *)uid {
+ (void)momentsInteractiveList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId pageSize:(NSString *)pageSize uid:(NSString *)uid {
NSString * fang = [NSString stringFromBase64String:@"aW50ZXJhY3RpdmUvbGlzdA=="];///interactive/list
NSMutableDictionary * dic = [NSMutableDictionary dictionary];
[dic safeSetObject:dynamicId forKey:@"id"];
@@ -56,11 +56,11 @@
}
///
/// @param complection
/// @param completion
/// @param uid uid
+ (void)monentsInteractiveClear:(HttpRequestHelperCompletion)complection uid:(NSString *)uid {
+ (void)momentsInteractiveClear:(HttpRequestHelperCompletion)completion uid:(NSString *)uid {
NSString * fang = [NSString stringFromBase64String:@"aW50ZXJhY3RpdmUvY2xlYXI="];///interactive/clear
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:complection, __FUNCTION__, uid, nil];
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, uid, nil];
}
///
@@ -69,7 +69,7 @@
/// @param page
/// @param pageSize
/// @param worldTypeId 0
+ (void)monentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid page:(NSString *)page pageSize:(NSString *)pageSize worldTypeId:(NSString *)worldTypeId {
+ (void)momentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid page:(NSString *)page pageSize:(NSString *)pageSize worldTypeId:(NSString *)worldTypeId {
NSString * fang = [NSString stringFromBase64String:@"d29ybGQvbGlzdA=="];///world/list
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, uid, page, pageSize, worldTypeId, nil];
}
@@ -80,7 +80,7 @@
/// @param uid uid
/// @param worldId id
/// @param shareUid uid
+ (void)userShareMonents:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid worldId:(NSString *)worldId shareUid:(NSString *)shareUid {
+ (void)userShareMoments:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid worldId:(NSString *)worldId shareUid:(NSString *)shareUid {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9zaGFyZQ=="];///dynamic/share
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, dynamicId, uid, worldId, shareUid, nil];
}
@@ -92,7 +92,7 @@
/// @param status 0 1
/// @param likedUid uid
/// @param worldId id
+ (void)monentsLike:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid status:(NSString *)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
+ (void)momentsLike:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid status:(NSString *)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9saWtl"];///dynamic/like
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, dynamicId, uid, status, likedUid, worldId, nil];
}
@@ -102,7 +102,7 @@
/// @param dynamicId id
/// @param worldId id
/// @param uid uid
+ (void)monentsDetail:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId worldId:(NSString *)worldId uid:(NSString *)uid {
+ (void)momentsDetail:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId worldId:(NSString *)worldId uid:(NSString *)uid {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9kZXRhaWw="];///dynamic/detail
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, dynamicId, worldId, uid, nil];
}
@@ -112,7 +112,7 @@
/// @param uid uid
/// @param dynamicId id
/// @param content
+ (void)monentDetailCommon:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId content:(NSString *)content {
+ (void)momentDetailCommon:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId content:(NSString *)content {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9jb21tZW50L3B1Ymxpc2g="];///dynamic/comment/publish
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, uid, dynamicId, content, nil];
}
@@ -123,7 +123,7 @@
/// @param dynamicId id
/// @param content
/// @param commentId id
+ (void)replyMonentsDetailCommon:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId content:(NSString *)content commentId:(NSString *)commentId {
+ (void)replyMomentsDetailCommon:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId content:(NSString *)content commentId:(NSString *)commentId {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9jb21tZW50L3JlcGx5"];///dynamic/comment/reply
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, uid, dynamicId, content, commentId, nil];
}
@@ -135,7 +135,7 @@
/// @param uid uid
/// @param pageSize
/// @param timestamp
+ (void)monentsCommentList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid pageSize:(NSString *)pageSize timestamp:(NSString *)timestamp {
+ (void)momentsCommentList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid pageSize:(NSString *)pageSize timestamp:(NSString *)timestamp {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9jb21tZW50L2xpc3Q="];///dynamic/comment/list
NSMutableDictionary * dic = [NSMutableDictionary dictionary];
[dic safeSetObject:dynamicId forKey:@"dynamicId"];
@@ -154,7 +154,7 @@
/// @param pageSize
/// @param commentId id
/// @param timestamp
+ (void)monentsCommentReplyList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid pageSize:(NSString *)pageSize commentId:(NSString *)commentId timestamp:(NSString *)timestamp {
+ (void)momentsCommentReplyList:(HttpRequestHelperCompletion)completion dynamicId:(NSString *)dynamicId uid:(NSString *)uid pageSize:(NSString *)pageSize commentId:(NSString *)commentId timestamp:(NSString *)timestamp {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9jb21tZW50L3JlcGx5L2xpc3Q="];///dynamic/comment/reply/list
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, dynamicId, uid, pageSize, commentId, timestamp, nil];
}
@@ -165,7 +165,7 @@
/// @param uid uid
/// @param type
/// @param page
+ (void)monentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid type:(NSString *)type page:(NSString *)page {
+ (void)momentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid type:(NSString *)type page:(NSString *)page {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9zcXVhcmUvd29ybGQ="];///dynamic/square/world
[self makeRequest:fang method:HttpRequestHelperMethodGET completion:completion, __FUNCTION__, uid, type, page, nil];
}
@@ -178,7 +178,7 @@
/// @param worldId id
/// @param content
/// @param resList
+ (void)monentsPublish:(HttpRequestHelperCompletion)completion uid:(NSString *)uid type:(NSString *)type worldId:(NSString *)worldId content:(NSString *)content resList:(NSArray *)resList {
+ (void)momentsPublish:(HttpRequestHelperCompletion)completion uid:(NSString *)uid type:(NSString *)type worldId:(NSString *)worldId content:(NSString *)content resList:(NSArray *)resList {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9zcXVhcmUvcHVibGlzaA=="];///dynamic/square/publish
NSMutableDictionary * dic = [NSMutableDictionary dictionary];
[dic safeSetObject:uid forKey:@"uid"];
@@ -203,7 +203,7 @@
/// @param types l
/// @param worldId id
/// @param pageSize
+ (void)monentsTopicLatestList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId types:(NSString *)types worldId:(NSString *)worldId pageSize:(NSString *)pageSize {
+ (void)momentsTopicLatestList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId types:(NSString *)types worldId:(NSString *)worldId pageSize:(NSString *)pageSize {
NSMutableDictionary * dic = [NSMutableDictionary dictionary];
[dic safeSetObject:uid forKey:@"uid"];
[dic safeSetObject:types forKey:@"types"];
@@ -223,7 +223,7 @@
/// @param types l
/// @param worldId id
/// @param pageSize
+ (void)monentsTopicRecommendList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId types:(NSString *)types worldId:(NSString *)worldId pageSize:(NSString *)pageSize {
+ (void)momentsTopicRecommendList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId types:(NSString *)types worldId:(NSString *)worldId pageSize:(NSString *)pageSize {
NSMutableDictionary * dic = [NSMutableDictionary dictionary];
[dic safeSetObject:uid forKey:@"uid"];
[dic safeSetObject:types forKey:@"types"];
@@ -240,28 +240,17 @@
/// @param completion
/// @param worldId id
/// @param uid uid
+ (void)monentsTopicDetailInfo:(HttpRequestHelperCompletion)completion worldId:(NSString *)worldId uid:(NSString *)uid{
+ (void)momentsTopicDetailInfo:(HttpRequestHelperCompletion)completion worldId:(NSString *)worldId uid:(NSString *)uid{
NSString * fang = [NSString stringFromBase64String:@"d29ybGQvZGV0YWls"];///world/detail
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__,worldId, uid, nil];
}
///
/// @param completion
/// @param uid uid
/// @param page
/// @param pageSize
/// @param worldTypeId
+ (void)moentsTopicList:(HttpRequestHelperCompletion)completion uid:(NSString *)uid page:(NSString *)page pageSize:(NSString *)pageSize worldTypeId:(NSString *)worldTypeId {
NSString * fang = [NSString stringFromBase64String:@"d29ybGQvbGlzdA=="];///world/list
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, uid, page, pageSize, worldTypeId, nil];
}
///
/// @param completion
/// @param uid uid
/// @param dynamicId id
/// @param worldId id
+ (void)monentsDelete:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId worldId:(NSString *)worldId {
+ (void)momentsDelete:(HttpRequestHelperCompletion)completion uid:(NSString *)uid dynamicId:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * fang = [NSString stringFromBase64String:@"ZHluYW1pYy9kZWxldGU="];///dynamic/delete
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, uid, dynamicId, worldId, nil];
}
@@ -269,14 +258,14 @@
///
/// @param completion
/// @param uid uid
+ (void)monentsUnReadCount:(HttpRequestHelperCompletion)completion uid:(NSString *)uid {
+ (void)momentsUnReadCount:(HttpRequestHelperCompletion)completion uid:(NSString *)uid {
NSString * fang = [NSString stringFromBase64String:@"aW50ZXJhY3RpdmUvdW5yZWFkQ291bnQ="];///interactive/unreadCount
[self makeRequest:fang method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, uid, nil];
}
///
/// @param completion
/// @param type type0 => , objId id, type1 => , objId uid
+ (void)requesstShielding:(HttpRequestHelperCompletion)completion type:(NSString *)type objId:(NSString *)objId{
+ (void)requestShielding:(HttpRequestHelperCompletion)completion type:(NSString *)type objId:(NSString *)objId{
[self makeRequest:[NSString stringWithFormat:@"%@%@%@",@"user/",@"black/",@"add"] method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, type,objId, nil];
}
@end

View File

@@ -13,10 +13,10 @@ typedef NS_ENUM(NSInteger, MonentsContentType) {
///纯文字的
MonentsContentType_Text = 0,
///图片
MonentsContentType_Picture = 2
MomentsContentType_Picture = 2
};
@class MonentsPicInfoModel;
@interface MonentsInfoModel : PIBaseModel
@class MomentsPicInfoModel;
@interface MomentsInfoModel : PIBaseModel
///类型
@property (nonatomic,assign) MonentsContentType type;
///用户的uid
@@ -44,7 +44,7 @@ typedef NS_ENUM(NSInteger, MonentsContentType) {
//发布时间
@property (nonatomic,copy) NSString *publishTime;
///等级
@property (nonatomic,strong) NSString *experLevelPic;
@property (nonatomic,strong) NSString *expertLevelPic;
///魅力等级
@property (nonatomic,strong) NSString *charmLevelPic;
///广场是否置顶
@@ -54,7 +54,7 @@ typedef NS_ENUM(NSInteger, MonentsContentType) {
///VIP信息
@property (nonatomic, strong) UserVipInfoVo *userVipInfoVO;
///发布的内容
@property (nonatomic,copy) NSArray<MonentsPicInfoModel *> *dynamicResList;
@property (nonatomic,copy) NSArray<MomentsPicInfoModel *> *dynamicResList;
///头饰url地址
@property (nonatomic,copy) NSString *headwearPic;
///头饰url地址
@@ -93,7 +93,7 @@ typedef NS_ENUM(NSInteger, MonentsContentType) {
@property (nonatomic, assign) NSInteger numberOfText;
@end
@interface MonentsPicInfoModel : PIBaseModel
@interface MomentsPicInfoModel : PIBaseModel
///图片的地址
@property (nonatomic,copy) NSString * resUrl;
///格式

View File

@@ -5,10 +5,10 @@
// Created by on 2022/5/11.
//
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
#import "NSString+Utils.h"
@implementation MonentsInfoModel
@implementation MomentsInfoModel
- (instancetype)init {
if (self = [super init]) {
self.isFold = YES;
@@ -17,12 +17,12 @@
}
+ (NSDictionary *)objectClassInArray {
return @{@"dynamicResList":MonentsPicInfoModel.class};
return @{@"dynamicResList":MomentsPicInfoModel.class};
}
@end
@implementation MonentsPicInfoModel
@implementation MomentsPicInfoModel
@end

View File

@@ -6,12 +6,12 @@
//
#import <Foundation/Foundation.h>
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MonentsListInfoModel : PIBaseModel
@interface MomentsListInfoModel : PIBaseModel
///列表数据
@property (nonatomic,strong) NSArray<MonentsInfoModel *> *dynamicList;
@property (nonatomic,strong) NSArray<MomentsInfoModel *> *dynamicList;
///下一个动态的id
@property (nonatomic,copy) NSString *nextDynamicId;
@end

View File

@@ -5,12 +5,12 @@
// Created by YUMI on 2022/5/18.
//
#import "MonentsListInfoModel.h"
#import "MomentsListInfoModel.h"
@implementation MonentsListInfoModel
@implementation MomentsListInfoModel
+ (NSDictionary *)objectClassInArray {
return @{@"dynamicList":[MonentsInfoModel class]};
return @{@"dynamicList":[MomentsInfoModel class]};
}
@end

View File

@@ -9,7 +9,7 @@
NS_ASSUME_NONNULL_BEGIN
@interface MonentsTopicModel : PIBaseModel
@interface MomentsTopicModel : PIBaseModel
///创建人id
@property (nonatomic, copy) NSString *ownerUid;
///名称

View File

@@ -5,9 +5,9 @@
// Created by YUMI on 2022/5/18.
//
#import "MonentsTopicModel.h"
#import "MomentsTopicModel.h"
@implementation MonentsTopicModel
@implementation MomentsTopicModel
+ (NSDictionary *)replacedKeyFromPropertyName {
return @{@"tId":@"id", @"desc":@"description"};

View File

@@ -6,7 +6,7 @@
//
#import <Foundation/Foundation.h>
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
#import "YUMINNNN.h"
NS_ASSUME_NONNULL_BEGIN
@@ -59,7 +59,7 @@ typedef NS_ENUM(NSInteger, MonentsInteractiveActionType) {
///话题的名称
@property (nonatomic,copy) NSString *worldName;
///动态的图片
@property (nonatomic,strong) MonentsPicInfoModel *dynamicRes;
@property (nonatomic,strong) MomentsPicInfoModel *dynamicRes;
@end
NS_ASSUME_NONNULL_END

View File

@@ -9,18 +9,18 @@
NS_ASSUME_NONNULL_BEGIN
@interface XPMonentMinePresenter : BaseMvpPresenter
@interface XPMomentMinePresenter : BaseMvpPresenter
/// 动态点赞
/// @param dynamicId 动态id
/// @param status yes 点赞 NO 取消
/// @param likedUid 点赞人的uid
/// @param worldId 话题的id
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId;
- (void)likeMoment:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId;
/// 删除动态
/// @param dynamicId 动态id
/// @param worldId 话题id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId;
- (void)deleteMoments:(NSString *)dynamicId worldId:(NSString *)worldId;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,12 +5,12 @@
// Created by YUMI on 2022/8/18.
//
#import "XPMonentMinePresenter.h"
#import "Api+Monents.h"
#import "XPMonentsMineProtocol.h"
#import "XPMomentMinePresenter.h"
#import "Api+Moments.h"
#import "XPMomentsMineProtocol.h"
#import "AccountInfoStorage.h"
@implementation XPMonentMinePresenter
@implementation XPMomentMinePresenter
///
@@ -18,21 +18,21 @@
/// @param status yes NO
/// @param likedUid uid
/// @param worldId id
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
- (void)likeMoment:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * statusStr = status ? @"1" : @"0";
[Api monentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] likeMonentsSuccess:dynamicId status:status];
[Api momentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] likeMomentsSuccess:dynamicId status:status];
} showLoading:YES] dynamicId:dynamicId uid:uid status:statusStr likedUid:likedUid worldId:worldId];
}
///
/// @param dynamicId id
/// @param worldId id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
- (void)deleteMoments:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMonentsSuccess:dynamicId];
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMomentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}
@end

View File

@@ -11,13 +11,13 @@ NS_ASSUME_NONNULL_BEGIN
#define kMONENTS_CONTENT_LEFT_PADDING 67
#define kMONENTS_CONTENT_RIGHT_PADDING 36
#define kMONENTS_CONTENT_MAX_WIDTH (KScreenWidth - kMONENTS_CONTENT_LEFT_PADDING - kMONENTS_CONTENT_RIGHT_PADDING)
#define kMONENTS_PIC_ONE_WIDTH 200 ///只有一个动态图片的高度
#define kMONENTS_PIC_SPACE 4 ///图片之间的间隙的宽度或者高度
#define kMOMENTS_PIC_ONE_WIDTH 200 ///只有一个动态图片的高度
#define kMOMENTS_PIC_SPACE 4 ///图片之间的间隙的宽度或者高度
#define kMONENTS_USER_INFO_HEIGHT 60 ///用户信息的高度
#define kMONENTS_TOOL_BAR_HEIGHT 58 ///底部操作栏的高度
#define kMONENTS_CONTENT_SPACAE_HEIGHT 12 /// 每个内容之间下面的间隙的高度
#define kMONENTS_TEXT_TOPIC_HEIGHT 20 /// 话题的高度
#define kMONENTS_FOLD_HEIGHT 20 /// 展开 关闭的高度
#define kMOMENTS_TOOL_BAR_HEIGHT 58 ///底部操作栏的高度
#define kMOMENTS_CONTENT_SPACAE_HEIGHT 12 /// 每个内容之间下面的间隙的高度
#define kMOMENTS_TEXT_TOPIC_HEIGHT 20 /// 话题的高度
#define kMOMENTS_FOLD_HEIGHT 20 /// 展开 关闭的高度
#pragma mark - 评论的配置
#define kMONENTS_COMMENT_LEFT_PADDING 15 ///评论左的间隙
#define kMONENTS_COMMENT_RIGHT_PADDING 25 ///评论右的间隙
@@ -27,25 +27,25 @@ NS_ASSUME_NONNULL_BEGIN
#pragma mark - 评论回复的配置
#define KMONENTS_COMMENT_REPLY_AVATAR_WIDTH 30 ///评论回复的头像大小
#define kMONENTS_COMMENT_REPLY_LEFT_PADDING (kMONENTS_COMMENT_LEFT_PADDING + kMONENTS_COMMENT_RIGHT_PADDING + kMONENTS_COMMENT_AVATAR_NICK_PADDING) ///回复这左边的间隙
#define KMONENTS_COMMENT_REPLY_MAX_WIDTH (KMONENTS_COMMENT_MAX_WIDTH - KMONENTS_COMMENT_REPLY_AVATAR_WIDTH - kMONENTS_COMMENT_AVATAR_NICK_PADDING) ///评论回复内容的最大宽度
#define kMOMENTS_COMMENT_REPLY_MAX_WIDTH (KMONENTS_COMMENT_MAX_WIDTH - KMONENTS_COMMENT_REPLY_AVATAR_WIDTH - kMONENTS_COMMENT_AVATAR_NICK_PADDING) ///评论回复内容的最大宽度
#pragma mark - 审核UI配置
#define kSIMPLE_MONENTS_CONTENT_LEFT_PADDING 16 ///动态内容左边间距
#define kSIMPLE_MONENTS_CONTENT_RIGHT_PADDING 16 ///动态内容右边间距
#define kSIMPLE_MONENTS_CONTENT_MAX_WIDTH (KScreenWidth - kSIMPLE_MONENTS_CONTENT_LEFT_PADDING - kSIMPLE_MONENTS_CONTENT_RIGHT_PADDING) ///动态内容最大宽度
#define kSIMPLE_MOMENTS_CONTENT_MAX_WIDTH (KScreenWidth - kSIMPLE_MONENTS_CONTENT_LEFT_PADDING - kSIMPLE_MONENTS_CONTENT_RIGHT_PADDING) ///动态内容最大宽度
#define KSIMPLE_MONENTS_COMMENT_AVATAR_WIDTH 40 ///评论的头像大小
@class MonentsInfoModel, MonentsCommentModel;
@interface XPMonentsLayoutConfig : NSObject
+ (void)layoutSimpleMonentsModel:(MonentsInfoModel *)monents;
+ (void)layoutMonentsModel:(MonentsInfoModel *)monents;
+ (CGFloat)monentsPicHeight:(MonentsInfoModel *)monents;
+ (CGFloat)monentsContentHeight:(MonentsInfoModel *)monents;
@class MomentsInfoModel, MonentsCommentModel;
@interface XPMomentsLayoutConfig : NSObject
+ (void)layoutSimpleMomentsModel:(MomentsInfoModel *)monents;
+ (void)layoutMomentsModel:(MomentsInfoModel *)monents;
+ (CGFloat)momentsPicHeight:(MomentsInfoModel *)monents;
+ (CGFloat)momentsContentHeight:(MomentsInfoModel *)monents;
///计算评论的高度
+ (CGFloat)commentCommentRowHeight:(MonentsCommentModel * )comment;
+ (void)layoutMonentsModelWithDynamic:(MonentsInfoModel *)monents;
+ (void)getNewlayoutMonentsModelWithDynamic:(MonentsInfoModel *)monents;
+ (void)layoutMonentsModelWithDynamic:(MomentsInfoModel *)monents;
+ (void)getNewLayoutMomentsModelWithDynamic:(MomentsInfoModel *)monents;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,40 +5,40 @@
// Created by YUMI on 2022/5/12.
//
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "DJDKMIMOMColor.h"
///Model
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
#import "MonentsCommentModel.h"
#import "QEmotionHelper.h"
@implementation XPMonentsLayoutConfig
@implementation XPMomentsLayoutConfig
#pragma mark -
+ (void)getNewlayoutMonentsModelWithDynamic:(MonentsInfoModel *)monents {
+ (void)getNewLayoutMomentsModelWithDynamic:(MomentsInfoModel *)moments {
CGFloat rowHeight = 10;
///
rowHeight += kMONENTS_CONTENT_SPACAE_HEIGHT;
rowHeight += kMOMENTS_CONTENT_SPACAE_HEIGHT;
///
rowHeight += [self monentsContentHeight:monents];
rowHeight += [self momentsContentHeight:moments];
///
rowHeight += [self getNewMonentsPicHeight:monents];
rowHeight += [self getNewMomentsPicHeight:moments];
///
if (monents.type == MonentsContentType_Picture && monents.content.length > 0) {
rowHeight += (kMONENTS_CONTENT_SPACAE_HEIGHT);
if (moments.type == MomentsContentType_Picture && moments.content.length > 0) {
rowHeight += (kMOMENTS_CONTENT_SPACAE_HEIGHT);
}
///
if (monents.worldId > 0) {
rowHeight += kMONENTS_TEXT_TOPIC_HEIGHT;
if (moments.worldId > 0) {
rowHeight += kMOMENTS_TEXT_TOPIC_HEIGHT;
}
///
rowHeight += kMONENTS_TOOL_BAR_HEIGHT;
monents.rowHeight = rowHeight;
rowHeight += kMOMENTS_TOOL_BAR_HEIGHT;
moments.rowHeight = rowHeight;
}
+ (CGFloat)getNewMonentsPicHeight:(MonentsInfoModel *)monents {
+ (CGFloat)getNewMomentsPicHeight:(MomentsInfoModel *)moments {
///
NSInteger picCount = monents.dynamicResList.count;
NSInteger picCount = moments.dynamicResList.count;
CGFloat picHeight = 0;
CGFloat width = KScreenWidth-27*2;
if (picCount == 0) {
@@ -46,210 +46,210 @@
} else if(picCount == 1) {
picHeight = width;
} else if(picCount == 2) {
picHeight = (width - kMONENTS_PIC_SPACE) / 2;
picHeight = (width - kMOMENTS_PIC_SPACE) / 2;
} else {
if (picCount > 9) {
picCount = 9;
}
CGFloat itemWidth = (width - kMONENTS_PIC_SPACE * 2) / 3;
CGFloat itemWidth = (width - kMOMENTS_PIC_SPACE * 2) / 3;
NSInteger page = picCount % 3;
NSInteger line = picCount / 3;
if (page == 0) {
picHeight = itemWidth * line + (line -1)* kMONENTS_PIC_SPACE;
picHeight = itemWidth * line + (line -1)* kMOMENTS_PIC_SPACE;
} else {
picHeight = itemWidth * (line +1) + line * kMONENTS_PIC_SPACE;
picHeight = itemWidth * (line +1) + line * kMOMENTS_PIC_SPACE;
}
}
monents.picHeight = picHeight;
moments.picHeight = picHeight;
return picHeight;
}
+ (void)layoutMonentsModelWithDynamic:(MonentsInfoModel *)monents {
+ (void)layoutMonentsModelWithDynamic:(MomentsInfoModel *)moments {
CGFloat rowHeight = 10;
///
rowHeight += kMONENTS_CONTENT_SPACAE_HEIGHT;
rowHeight += kMOMENTS_CONTENT_SPACAE_HEIGHT;
///
rowHeight += [self monentsContentHeight:monents];
rowHeight += [self momentsContentHeight:moments];
///
rowHeight += [self monentsPicHeight:monents];
rowHeight += [self momentsPicHeight:moments];
///
if (monents.type == MonentsContentType_Picture && monents.content.length > 0) {
rowHeight += (kMONENTS_CONTENT_SPACAE_HEIGHT);
if (moments.type == MomentsContentType_Picture && moments.content.length > 0) {
rowHeight += (kMOMENTS_CONTENT_SPACAE_HEIGHT);
}
///
if (monents.worldId > 0) {
rowHeight += kMONENTS_TEXT_TOPIC_HEIGHT;
if (moments.worldId > 0) {
rowHeight += kMOMENTS_TEXT_TOPIC_HEIGHT;
}
///
rowHeight += kMONENTS_TOOL_BAR_HEIGHT;
monents.rowHeight = rowHeight;
rowHeight += kMOMENTS_TOOL_BAR_HEIGHT;
moments.rowHeight = rowHeight;
}
+ (void)layoutSimpleMonentsModel:(MonentsInfoModel *)monents {
CGFloat rowHeight = kMONENTS_CONTENT_SPACAE_HEIGHT;
+ (void)layoutSimpleMomentsModel:(MomentsInfoModel *)moments {
CGFloat rowHeight = kMOMENTS_CONTENT_SPACAE_HEIGHT;
///
rowHeight += [self simpleMonentsContentHeight:monents];
rowHeight += [self simpleMomentsContentHeight:moments];
///
rowHeight += [self monentsPicHeight:monents];
rowHeight += [self momentsPicHeight:moments];
///
if (monents.type == MonentsContentType_Picture && monents.content.length > 0) {
rowHeight += (kMONENTS_CONTENT_SPACAE_HEIGHT * 2);
if (moments.type == MomentsContentType_Picture && moments.content.length > 0) {
rowHeight += (kMOMENTS_CONTENT_SPACAE_HEIGHT * 2);
}else {
rowHeight += kMONENTS_CONTENT_SPACAE_HEIGHT;
rowHeight += kMOMENTS_CONTENT_SPACAE_HEIGHT;
}
///
rowHeight += kMONENTS_TEXT_TOPIC_HEIGHT;
monents.rowHeight = rowHeight;
rowHeight += kMOMENTS_TEXT_TOPIC_HEIGHT;
moments.rowHeight = rowHeight;
}
+ (CGFloat)simpleMonentsContentHeight:(MonentsInfoModel *)monents {
if (monents.content.length <= 0) {
monents.contentHeight = 0;
+ (CGFloat)simpleMomentsContentHeight:(MomentsInfoModel *)moments {
if (moments.content.length <= 0) {
moments.contentHeight = 0;
return 0;
}
///
if (!monents.contentAttribute) {
if (!moments.contentAttribute) {
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] init];
if (monents.squareTop ) {///广
if (moments.squareTop ) {///广
NSTextAttachment * attachment = [[NSTextAttachment alloc] init];
attachment.bounds = CGRectMake(0, 0, 25 * 1.3 ,10 * 1.3);
attachment.image = [UIImage getLanguageImage:@"monents_info_top"];
NSAttributedString * starAttribute = [NSMutableAttributedString attributedStringWithAttachment:(NSTextAttachment *)attachment];
[attributedString insertAttributedString:starAttribute atIndex:0];
}
[attributedString appendAttributedString:[self creatStrAttrByStr:monents.content attributed:@{NSFontAttributeName : [UIFont systemFontOfSize:15]}]];
[attributedString appendAttributedString:[self creatStrAttrByStr:moments.content attributed:@{NSFontAttributeName : [UIFont systemFontOfSize:15]}]];
attributedString.yy_lineSpacing = 5;
attributedString.yy_lineBreakMode = NSLineBreakByWordWrapping;
monents.contentAttribute = attributedString;
moments.contentAttribute = attributedString;
}
YYTextContainer *container = [YYTextContainer new];
container.size = CGSizeMake(kSIMPLE_MONENTS_CONTENT_MAX_WIDTH, CGFLOAT_MAX);
container.size = CGSizeMake(kSIMPLE_MOMENTS_CONTENT_MAX_WIDTH, CGFLOAT_MAX);
container.maximumNumberOfRows = 0;
YYTextLayout *layout = [YYTextLayout layoutWithContainer:container text:monents.contentAttribute];
monents.numberOfText = layout.rowCount;
YYTextLayout *layout = [YYTextLayout layoutWithContainer:container text:moments.contentAttribute];
moments.numberOfText = layout.rowCount;
CGFloat foldHeight = 0;
if (layout.rowCount > 6) {
foldHeight = kMONENTS_FOLD_HEIGHT;
NSInteger numberOfLines = monents.isFold ? 6 : 0;
foldHeight = kMOMENTS_FOLD_HEIGHT;
NSInteger numberOfLines = moments.isFold ? 6 : 0;
container.maximumNumberOfRows = numberOfLines;
}
YYTextLayout *realLayout = [YYTextLayout layoutWithContainer:container text:monents.contentAttribute];
YYTextLayout *realLayout = [YYTextLayout layoutWithContainer:container text:moments.contentAttribute];
CGFloat contentHeight = realLayout.textBoundingSize.height;
monents.contentHeight =contentHeight;
moments.contentHeight =contentHeight;
return contentHeight + foldHeight;
}
+ (CGFloat)simpleMonentsPicHeight:(MonentsInfoModel *)monents {
+ (CGFloat)simpleMonentsPicHeight:(MomentsInfoModel *)moments {
///
NSInteger picCount = monents.dynamicResList.count;
NSInteger picCount = moments.dynamicResList.count;
CGFloat picHeight = 0;
if (picCount == 0) {
picHeight = 0;
} else if(picCount == 1) {
picHeight = kMONENTS_PIC_ONE_WIDTH;
picHeight = kMOMENTS_PIC_ONE_WIDTH;
} else if(picCount == 2) {
picHeight = (kSIMPLE_MONENTS_CONTENT_MAX_WIDTH - kMONENTS_PIC_SPACE) / 2;
picHeight = (kSIMPLE_MOMENTS_CONTENT_MAX_WIDTH - kMOMENTS_PIC_SPACE) / 2;
} else {
if (picCount > 9) {
picCount = 9;
}
CGFloat itemWidth = (kSIMPLE_MONENTS_CONTENT_MAX_WIDTH - kMONENTS_PIC_SPACE * 2) / 3;
CGFloat itemWidth = (kSIMPLE_MOMENTS_CONTENT_MAX_WIDTH - kMOMENTS_PIC_SPACE * 2) / 3;
NSInteger page = picCount % 3;
NSInteger line = picCount / 3;
if (page == 0) {
picHeight = itemWidth * line + (line -1)* kMONENTS_PIC_SPACE;
picHeight = itemWidth * line + (line -1)* kMOMENTS_PIC_SPACE;
} else {
picHeight = itemWidth * (line +1) + line * kMONENTS_PIC_SPACE;
picHeight = itemWidth * (line +1) + line * kMOMENTS_PIC_SPACE;
}
}
monents.picHeight = picHeight;
moments.picHeight = picHeight;
return picHeight;
}
#pragma mark -
+ (void)layoutMonentsModel:(MonentsInfoModel *)monents {
+ (void)layoutMomentsModel:(MomentsInfoModel *)moments {
CGFloat rowHeight = kMONENTS_USER_INFO_HEIGHT;
///
rowHeight += kMONENTS_CONTENT_SPACAE_HEIGHT;
rowHeight += kMOMENTS_CONTENT_SPACAE_HEIGHT;
///
rowHeight += [self monentsContentHeight:monents];
rowHeight += [self momentsContentHeight:moments];
///
rowHeight += [self monentsPicHeight:monents];
rowHeight += [self momentsPicHeight:moments];
///
if (monents.type == MonentsContentType_Picture && monents.content.length > 0) {
rowHeight += (kMONENTS_CONTENT_SPACAE_HEIGHT * 2);
if (moments.type == MomentsContentType_Picture && moments.content.length > 0) {
rowHeight += (kMOMENTS_CONTENT_SPACAE_HEIGHT * 2);
}else {
rowHeight += kMONENTS_CONTENT_SPACAE_HEIGHT;
rowHeight += kMOMENTS_CONTENT_SPACAE_HEIGHT;
}
///
rowHeight += kMONENTS_TEXT_TOPIC_HEIGHT;
rowHeight += kMOMENTS_TEXT_TOPIC_HEIGHT;
///
rowHeight += kMONENTS_TOOL_BAR_HEIGHT;
monents.rowHeight = rowHeight;
rowHeight += kMOMENTS_TOOL_BAR_HEIGHT;
moments.rowHeight = rowHeight;
}
+ (CGFloat)monentsPicHeight:(MonentsInfoModel *)monents {
+ (CGFloat)momentsPicHeight:(MomentsInfoModel *)moments {
///
NSInteger picCount = monents.dynamicResList.count;
NSInteger picCount = moments.dynamicResList.count;
CGFloat picHeight = 0;
if (picCount == 0) {
picHeight = 0;
} else if(picCount == 1) {
picHeight = kMONENTS_PIC_ONE_WIDTH;
picHeight = kMOMENTS_PIC_ONE_WIDTH;
} else if(picCount == 2) {
picHeight = (kMONENTS_CONTENT_MAX_WIDTH - kMONENTS_PIC_SPACE) / 2;
picHeight = (kMONENTS_CONTENT_MAX_WIDTH - kMOMENTS_PIC_SPACE) / 2;
} else {
if (picCount > 9) {
picCount = 9;
}
CGFloat itemWidth = (kMONENTS_CONTENT_MAX_WIDTH - kMONENTS_PIC_SPACE * 2) / 3;
CGFloat itemWidth = (kMONENTS_CONTENT_MAX_WIDTH - kMOMENTS_PIC_SPACE * 2) / 3;
NSInteger page = picCount % 3;
NSInteger line = picCount / 3;
if (page == 0) {
picHeight = itemWidth * line + (line -1)* kMONENTS_PIC_SPACE;
picHeight = itemWidth * line + (line -1)* kMOMENTS_PIC_SPACE;
} else {
picHeight = itemWidth * (line +1) + line * kMONENTS_PIC_SPACE;
picHeight = itemWidth * (line +1) + line * kMOMENTS_PIC_SPACE;
}
}
monents.picHeight = picHeight;
moments.picHeight = picHeight;
return picHeight;
}
+ (CGFloat)monentsContentHeight:(MonentsInfoModel *)monents {
if (monents.content.length <= 0) {
monents.contentHeight = 0;
+ (CGFloat)momentsContentHeight:(MomentsInfoModel *)moments {
if (moments.content.length <= 0) {
moments.contentHeight = 0;
return 0;
}
///
if (!monents.contentAttribute) {
if (!moments.contentAttribute) {
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] init];
if (monents.squareTop ) {///广
if (moments.squareTop ) {///广
NSTextAttachment * attachment = [[NSTextAttachment alloc] init];
attachment.bounds = CGRectMake(0, 0, 25 * 1.3 ,10 * 1.3);
attachment.image = [UIImage getLanguageImage:@"monents_info_top"];
NSAttributedString * starAttribute = [NSMutableAttributedString attributedStringWithAttachment:(NSTextAttachment *)attachment];
[attributedString insertAttributedString:starAttribute atIndex:0];
}
[attributedString appendAttributedString:[self creatStrAttrByStr:monents.content attributed:@{NSFontAttributeName : [UIFont systemFontOfSize:15]}]];
[attributedString appendAttributedString:[self creatStrAttrByStr:moments.content attributed:@{NSFontAttributeName : [UIFont systemFontOfSize:15]}]];
attributedString.yy_lineSpacing = 5;
attributedString.yy_lineBreakMode = NSLineBreakByWordWrapping;
monents.contentAttribute = attributedString;
moments.contentAttribute = attributedString;
}
YYTextContainer *container = [YYTextContainer new];
container.size = CGSizeMake(kMONENTS_CONTENT_MAX_WIDTH, CGFLOAT_MAX);
container.maximumNumberOfRows = 0;
YYTextLayout *layout = [YYTextLayout layoutWithContainer:container text:monents.contentAttribute];
monents.numberOfText = layout.rowCount;
YYTextLayout *layout = [YYTextLayout layoutWithContainer:container text:moments.contentAttribute];
moments.numberOfText = layout.rowCount;
CGFloat foldHeight = 0;
if (layout.rowCount > 6) {
foldHeight = kMONENTS_FOLD_HEIGHT;
NSInteger numberOfLines = monents.isFold ? 6 : 0;
foldHeight = kMOMENTS_FOLD_HEIGHT;
NSInteger numberOfLines = moments.isFold ? 6 : 0;
container.maximumNumberOfRows = numberOfLines;
}
YYTextLayout *realLayout = [YYTextLayout layoutWithContainer:container text:monents.contentAttribute];
YYTextLayout *realLayout = [YYTextLayout layoutWithContainer:container text:moments.contentAttribute];
CGFloat contentHeight = realLayout.textBoundingSize.height;
monents.contentHeight =contentHeight;
moments.contentHeight =contentHeight;
return contentHeight + foldHeight;
}
@@ -272,7 +272,7 @@
QEmotionHelper *faceManager = [QEmotionHelper sharedEmotionHelper];
NSMutableAttributedString * attribute = [faceManager attributedStringByText:comment.content font:[UIFont systemFontOfSize:15]];
YYTextContainer *container = [YYTextContainer new];
container.size = CGSizeMake(KMONENTS_COMMENT_REPLY_MAX_WIDTH, CGFLOAT_MAX);
container.size = CGSizeMake(kMOMENTS_COMMENT_REPLY_MAX_WIDTH, CGFLOAT_MAX);
container.maximumNumberOfRows = 0;
YYTextLayout *realLayout = [YYTextLayout layoutWithContainer:container text:attribute];
CGFloat commentHeight = realLayout.textBoundingSize.height;
@@ -299,7 +299,7 @@
CGFloat commentTopHeight = 10 + 15 + 10;///10 15
CGFloat commentBottomHeight = 10;
YYTextContainer *container = [YYTextContainer new];
container.size = CGSizeMake(KMONENTS_COMMENT_REPLY_MAX_WIDTH, CGFLOAT_MAX);
container.size = CGSizeMake(kMOMENTS_COMMENT_REPLY_MAX_WIDTH, CGFLOAT_MAX);
container.maximumNumberOfRows = 0;
YYTextLayout *realLayout = [YYTextLayout layoutWithContainer:container text:obj.contentAttribute];
CGFloat replyContentHeight = realLayout.textBoundingSize.height;

View File

@@ -9,31 +9,31 @@
NS_ASSUME_NONNULL_BEGIN
@interface XPMonentsRecommendPresenter : BaseMvpPresenter
@interface XPMomentsRecommendPresenter : BaseMvpPresenter
/// 获取朋友圈动态推荐列表
/// @param page 当前的页数
/// @param pageSize 一页的个数
/// @param state 状态
- (void)getMonentsRecommendList:(NSInteger)page pageSize:(NSInteger)pageSize state:(int)state;
- (void)getMomentsRecommendList:(NSInteger)page pageSize:(NSInteger)pageSize state:(int)state;
/// 获取话题列表
/// @param page 当前的页数
/// @param pageSize 一页多少个
- (void)getMonentsTopicList:(NSInteger)page pageSize:(NSInteger)pageSize;
- (void)getMomentsTopicList:(NSInteger)page pageSize:(NSInteger)pageSize;
/// 动态点赞
/// @param dynamicId 动态id
/// @param status yes 点赞 NO 取消
/// @param likedUid 点赞人的uid
/// @param worldId 话题的id
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId;
- (void)likeMoment:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId;
/// 删除动态
/// @param dynamicId 动态id
/// @param worldId 话题id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId;
- (void)deleteMoments:(NSString *)dynamicId worldId:(NSString *)worldId;
///屏蔽
- (void)requesstShieldingWtihType:(NSString *)type objId:(NSString *)objId;
- (void)requestShieldingWithType:(NSString *)type objId:(NSString *)objId;
@end

View File

@@ -5,27 +5,30 @@
// Created by YUMI on 2022/5/13.
//
#import "XPMonentsRecommendPresenter.h"
#import "XPMomentsRecommendPresenter.h"
#import "AccountInfoStorage.h"
#import "Api+Monents.h"
#import "MonentsTopicModel.h"
#import "MonentsInfoModel.h"
#import "XPMonentsRecommendProtocol.h"
@implementation XPMonentsRecommendPresenter
#import "Api+Moments.h"
#import "MomentsTopicModel.h"
#import "MomentsInfoModel.h"
#import "XPMomentsRecommendProtocol.h"
@implementation XPMomentsRecommendPresenter
///
/// @param page
/// @param pageSize
/// @param state
- (void)getMonentsRecommendList:(NSInteger)page pageSize:(NSInteger)pageSize state:(int)state {
- (void)getMomentsRecommendList:(NSInteger)page pageSize:(NSInteger)pageSize state:(int)state {
NSString * pageStr = [NSString stringWithFormat:@"%ld", page];
NSString * pageSizeStr = [NSString stringWithFormat:@"%ld", pageSize];
[Api monentsRecommendList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSArray *array = [MonentsInfoModel modelsWithArray:data.data];
[[self getView] getMonentsRecommendListSuccess:array state:state];
@kWeakify(self);
[Api momentsRecommendList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
@kStrongify(self);
NSArray *array = [MomentsInfoModel modelsWithArray:data.data];
[[self getView] getMomentsRecommendListSuccess:array state:state];
} fail:^(NSInteger code, NSString * _Nullable msg) {
[[self getView] getMonentsRecommendListFail:msg state:state];
@kStrongify(self);
[[self getView] getMomentsRecommendListFail:msg state:state];
} showLoading:NO] page:pageStr pageSize:pageSizeStr types:@"0,2"];
}
@@ -33,13 +36,15 @@
///
/// @param page
/// @param pageSize
- (void)getMonentsTopicList:(NSInteger)page pageSize:(NSInteger)pageSize {
- (void)getMomentsTopicList:(NSInteger)page pageSize:(NSInteger)pageSize {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * pageStr = [NSString stringWithFormat:@"%ld", page];
NSString * pageSizeStr = [NSString stringWithFormat:@"%ld", pageSize];
[Api monentsTopicList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSArray * array = [MonentsTopicModel modelsWithArray:data.data[@"records"]];
[[self getView] monentsTopicListSuccess:array];
@kWeakify(self);
[Api momentsTopicList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
@kStrongify(self);
NSArray * array = [MomentsTopicModel modelsWithArray:data.data[@"records"]];
[[self getView] momentsTopicListSuccess:array];
}showLoading:NO] uid:uid page:pageStr pageSize:pageSizeStr worldTypeId:@"1"];
}
@@ -48,26 +53,32 @@
/// @param status yes NO
/// @param likedUid uid
/// @param worldId id
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
- (void)likeMoment:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * statusStr = status ? @"1" : @"0";
[Api monentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] likeMonentsSuccess:dynamicId status:status];
@kWeakify(self);
[Api momentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
@kStrongify(self);
[[self getView] likeMomentsSuccess:dynamicId status:status];
} showLoading:YES] dynamicId:dynamicId uid:uid status:statusStr likedUid:likedUid worldId:worldId];
}
///
/// @param dynamicId id
/// @param worldId id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
- (void)deleteMoments:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMonentsSuccess:dynamicId];
@kWeakify(self);
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
@kStrongify(self);
[[self getView] deleteMomentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}
- (void)requesstShieldingWtihType:(NSString *)type objId:(NSString *)objId{
[Api requesstShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] requesstShieldingSuccess:objId];
- (void)requestShieldingWithType:(NSString *)type objId:(NSString *)objId{
@kWeakify(self);
[Api requestShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
@kStrongify(self);
[[self getView] requestShieldingSuccess:objId];
}] type:type objId:objId];
}
@end

View File

@@ -9,7 +9,7 @@
NS_ASSUME_NONNULL_BEGIN
@interface XPMonentsTopicListPresenter : BaseMvpPresenter
@interface XPMomentsTopicListPresenter : BaseMvpPresenter
- (void)getMoentsTopicList:(int)page pageSize:(int)pageSize state:(int)state;
/// 删除动态

View File

@@ -5,23 +5,23 @@
// Created by YUMI on 2022/8/18.
//
#import "XPMonentsTopicListPresenter.h"
#import "Api+Monents.h"
#import "XPMomentsTopicListPresenter.h"
#import "Api+Moments.h"
#import "AccountInfoStorage.h"
#import "MonentsTopicModel.h"
#import "XPMonentsTopicListProtocol.h"
#import "MomentsTopicModel.h"
#import "XPMomentsTopicListProtocol.h"
@implementation XPMonentsTopicListPresenter
@implementation XPMomentsTopicListPresenter
- (void)getMoentsTopicList:(int)page pageSize:(int)pageSize state:(int)state {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * pageStr = [NSString stringWithFormat:@"%d", page];
NSString * pageSizeStr = [NSString stringWithFormat:@"%d", pageSize];
[Api moentsTopicList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSArray * array = [MonentsTopicModel modelsWithArray:data.data[@"records"]];
[[self getView] getMonentsTopicListSuccess:array state:state];
[Api momentsTopicList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSArray * array = [MomentsTopicModel modelsWithArray:data.data[@"records"]];
[[self getView] getMomentsTopicListSuccess:array state:state];
}fail:^(NSInteger code, NSString * _Nullable msg) {
[[self getView] getMoentsTopicFail:msg state:state];
[[self getView] getMomentsTopicFail:msg state:state];
} showLoading:YES] uid:uid page:pageStr pageSize:pageSizeStr worldTypeId:@"0"];
}
@@ -30,8 +30,8 @@
/// @param worldId id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMonentsSuccess:dynamicId];
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMomentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}

View File

@@ -6,10 +6,10 @@
//
#import "XPMonentDetailPresenter.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "AccountInfoStorage.h"
#import "XPMonentsDetailProtocol.h"
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
#import "MonentsCommentModel.h"
#import "MonentsCommentReplyModel.h"
@implementation XPMonentDetailPresenter
@@ -18,8 +18,8 @@
/// @param dynamicId ID
- (void)getMonentsDetail:(NSString *)dynamicId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDetail:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MonentsInfoModel * monentsInfo = [MonentsInfoModel modelWithDictionary:data.data];
[Api momentsDetail:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MomentsInfoModel * monentsInfo = [MomentsInfoModel modelWithDictionary:data.data];
[[self getView] getMonentsDetailSuccess:monentsInfo];
} showLoading:YES] dynamicId:dynamicId worldId:@"" uid:uid];
}
@@ -31,7 +31,7 @@
/// @param state
- (void)getMonentsCommentList:(NSString *)dynamicId timestamp:(NSString *)timestamp status:(int)state{
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsCommentList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsCommentList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MonentsCommentListModel * info = [MonentsCommentListModel modelWithDictionary:data.data];
[[self getView] getMonentsCommentListSuccess:info state:state];
}] dynamicId:dynamicId uid:uid pageSize:@"10" timestamp:timestamp];
@@ -44,7 +44,7 @@
/// @param timestamp
- (void)getMonentsCommentReplyList:(NSString *)dynamicId commentId:(NSString *)commentId timestamp:(NSString *)timestamp {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsCommentReplyList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsCommentReplyList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MonentsCommentReplyModel * replyInfo = [MonentsCommentReplyModel modelWithDictionary:data.data];
[[self getView] getMonentsCommentReplyListSuccess:replyInfo commentId:commentId];
}] dynamicId:dynamicId uid:uid pageSize:@"5" commentId:commentId timestamp:timestamp];
@@ -58,7 +58,7 @@
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * statusStr = status ? @"1" : @"0";
[Api monentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] likeMonentsSuccess:dynamicId status:status];
} showLoading:YES] dynamicId:dynamicId uid:uid status:statusStr likedUid:likedUid worldId:worldId];
}
@@ -68,7 +68,7 @@
/// @param worldId id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMonentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}
@@ -79,7 +79,7 @@
/// @param content
- (void)commontMonents:(NSString *)dynamicId content:(NSString *)content {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentDetailCommon:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentDetailCommon:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] commonMonentsSuccess];
} showLoading:YES] uid:uid dynamicId:dynamicId content:content];
}
@@ -90,12 +90,12 @@
/// @param content
- (void)replayCommon:(NSString *)commonId dynamicId:(NSString *)dynamicId content:(NSString *)content {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api replyMonentsDetailCommon:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api replyMomentsDetailCommon:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] replyMonentsSuccess];
}] uid:uid dynamicId:dynamicId content:content commentId:commonId];
}
- (void)requesstShieldingWtihType:(NSString *)type objId:(NSString *)objId{
[Api requesstShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api requestShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] requesstShieldingSuccess:objId];
}] type:type objId:objId];
}

View File

@@ -6,8 +6,8 @@
//
#import "XPMonentsAttentionPresenter.h"
#import "Api+Monents.h"
#import "MonentsListInfoModel.h"
#import "Api+Moments.h"
#import "MomentsListInfoModel.h"
#import "XPMonentsAttentionProtocol.h"
#import "AccountInfoStorage.h"
@implementation XPMonentsAttentionPresenter
@@ -21,8 +21,8 @@
dynamicId = @"";
}
NSString * pageSizeStr = [NSString stringWithFormat:@"%ld", pageSize];
[Api monentsFollowerList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MonentsListInfoModel *listInfo = [MonentsListInfoModel modelWithDictionary:data.data];
[Api momentsFollowerList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MomentsListInfoModel *listInfo = [MomentsListInfoModel modelWithDictionary:data.data];
[[self getView] getMonentsAttentionListSuccess:listInfo state:state];
} fail:^(NSInteger code, NSString * _Nullable msg) {
[[self getView] getMonentsAttentionListFail:msg state:state];
@@ -37,7 +37,7 @@
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * statusStr = status ? @"1" : @"0";
[Api monentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] likeMonentsSuccess:dynamicId status:status];
} showLoading:YES] dynamicId:dynamicId uid:uid status:statusStr likedUid:likedUid worldId:worldId];
}
@@ -47,13 +47,13 @@
/// @param worldId id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMonentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}
- (void)requesstShieldingWtihType:(NSString *)type objId:(NSString *)objId{
[Api requesstShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api requestShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] requesstShieldingSuccess:objId];
}] type:type objId:objId];
}

View File

@@ -6,7 +6,7 @@
//
#import "XPMonentsInteractivePresenter.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "XPMonentsInteractiveProtocol.h"
#import "AccountInfoStorage.h"
#import "MonentsInteractiveModel.h"
@@ -21,7 +21,7 @@
- (void)getMonentsInteractiveList:(NSString *)dynamicId pageSize:(int)pageSize state:(int)state{
NSString * pageSizeStr = [NSString stringWithFormat:@"%d", pageSize];
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsInteractiveList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsInteractiveList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSArray * array = [MonentsInteractiveModel modelsWithArray:data.data];
[[self getView] getMonentsInteractiveListSueccess:array state:state];
} fail:^(NSInteger code, NSString * _Nullable msg) {
@@ -32,7 +32,7 @@
///
- (void)clearInteractiveMessage {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsInteractiveClear:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsInteractiveClear:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] clearInteractiveMessageSuccess];
} showLoading:YES] uid:uid];
}

View File

@@ -6,8 +6,8 @@
//
#import "XPMonentsLatestPresenter.h"
#import "Api+Monents.h"
#import "MonentsListInfoModel.h"
#import "Api+Moments.h"
#import "MomentsListInfoModel.h"
#import "XPMonentsLatestProtocol.h"
#import "AccountInfoStorage.h"
@implementation XPMonentsLatestPresenter
@@ -21,8 +21,8 @@
dynamicId = @"";
}
NSString * pageSizeStr = [NSString stringWithFormat:@"%ld", pageSize];
[Api monentsLatestList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MonentsListInfoModel *listInfo = [MonentsListInfoModel modelWithDictionary:data.data];
[Api momentsLatestList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MomentsListInfoModel *listInfo = [MomentsListInfoModel modelWithDictionary:data.data];
[[self getView] getMonentsLatestListSuccess:listInfo state:state];
} fail:^(NSInteger code, NSString * _Nullable msg) {
[[self getView] getMonentsLatestListFail:msg state:state];
@@ -37,7 +37,7 @@
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * statusStr = status ? @"1" : @"0";
[Api monentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] likeMonentsSuccess:dynamicId status:status];
} showLoading:YES] dynamicId:dynamicId uid:uid status:statusStr likedUid:likedUid worldId:worldId];
}
@@ -47,12 +47,12 @@
/// @param worldId id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMonentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}
- (void)requesstShieldingWtihType:(NSString *)type objId:(NSString *)objId{
[Api requesstShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api requestShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] requesstShieldingSuccess:objId];
}] type:type objId:objId];
}

View File

@@ -6,7 +6,7 @@
//
#import "BaseMvpPresenter.h"
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface XPMonentsPublishPresenter : BaseMvpPresenter

View File

@@ -6,7 +6,7 @@
//
#import "XPMonentsPublishPresenter.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "XPMonentsPublishProtocol.h"
#import "AccountInfoStorage.h"
@@ -15,7 +15,7 @@
- (void)publishMonents:(NSString *)worldId type:(MonentsContentType)type content:(NSString *)content resList:(NSArray *)resList {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * typeStr = [NSString stringWithFormat:@"%ld", type];
[Api monentsPublish:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsPublish:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] publishMonentsSuccess];
} showLoading:YES] uid:uid type:typeStr worldId:worldId content:content resList:resList];
}

View File

@@ -6,16 +6,16 @@
//
#import "XPMonentsTopicLatestPresenter.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "AccountInfoStorage.h"
#import "MonentsListInfoModel.h"
#import "MomentsListInfoModel.h"
#import "XPMonentsTopicLatestProtocol.h"
@implementation XPMonentsTopicLatestPresenter
- (void)getMonentsTopicLatestList:(NSString *)dynamicId worldId:(NSString *)worldId state:(int)state {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsTopicLatestList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MonentsListInfoModel * model = [MonentsListInfoModel modelWithDictionary:data.data];
[Api momentsTopicLatestList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MomentsListInfoModel * model = [MomentsListInfoModel modelWithDictionary:data.data];
[[self getView] getMonentsTopicLatestListSuccess:model state:state];
}fail:^(NSInteger code, NSString * _Nullable msg) {
[[self getView] getMonentsTopicLatestListFail:msg state:state];
@@ -30,7 +30,7 @@
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * statusStr = status ? @"1" : @"0";
[Api monentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] likeMonentsSuccess:dynamicId status:status];
} showLoading:YES] dynamicId:dynamicId uid:uid status:statusStr likedUid:likedUid worldId:worldId];
}
@@ -40,12 +40,12 @@
/// @param worldId id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMonentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}
- (void)requesstShieldingWtihType:(NSString *)type objId:(NSString *)objId{
[Api requesstShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api requestShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] requesstShieldingSuccess:objId];
}] type:type objId:objId];
}

View File

@@ -6,16 +6,16 @@
//
#import "XPMonentsTopicRecommendPresenter.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "AccountInfoStorage.h"
#import "MonentsListInfoModel.h"
#import "MomentsListInfoModel.h"
#import "XPMonentsTopicRecommendProtocol.h"
@implementation XPMonentsTopicRecommendPresenter
- (void)getMonentsTopicRecommendList:(NSString *)dynamicId worldId:(NSString *)worldId state:(int)state {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsTopicRecommendList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MonentsListInfoModel * model = [MonentsListInfoModel modelWithDictionary:data.data];
[Api momentsTopicRecommendList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MomentsListInfoModel * model = [MomentsListInfoModel modelWithDictionary:data.data];
[[self getView] getMonentsTopicRecommendListSuccess:model state:state];
}fail:^(NSInteger code, NSString * _Nullable msg) {
[[self getView] getMonentsTopicRecommendListFail:msg state:state];
@@ -30,7 +30,7 @@
- (void)likeMonent:(NSString *)dynamicId status:(BOOL)status likedUid:(NSString *)likedUid worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
NSString * statusStr = status ? @"1" : @"0";
[Api monentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api momentsLike:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] likeMonentsSuccess:dynamicId status:status];
} showLoading:YES] dynamicId:dynamicId uid:uid status:statusStr likedUid:likedUid worldId:worldId];
}
@@ -40,12 +40,12 @@
/// @param worldId id
- (void)deleteMonents:(NSString *)dynamicId worldId:(NSString *)worldId {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsDelete:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[[self getView] deleteMonentsSuccess:dynamicId];
} uid:uid dynamicId:dynamicId worldId:worldId];
}
- (void)requesstShieldingWtihType:(NSString *)type objId:(NSString *)objId{
[Api requesstShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[Api requestShielding:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView] requesstShieldingSuccess:objId];
}] type:type objId:objId];
}

View File

@@ -9,10 +9,10 @@
NS_ASSUME_NONNULL_BEGIN
@protocol XPMonentsDetailViewControllerDelegate <NSObject>
@protocol XPMomentsDetailViewControllerDelegate <NSObject>
///删除了动态
- (void)xPMonentsDetailViewController:(UIViewController *)view deleteMonents:(NSString *)dynamicId;
- (void)XPMomentsDetailViewController:(UIViewController *)view deleteMoments:(NSString *)dynamicId;
@end

View File

@@ -9,12 +9,12 @@
NS_ASSUME_NONNULL_BEGIN
@protocol XPMonentsMineProtocol <NSObject>
@protocol XPMomentsMineProtocol <NSObject>
///点赞/取消动态成功
- (void)likeMonentsSuccess:(NSString *)dynamicId status:(BOOL)status;
- (void)likeMomentsSuccess:(NSString *)dynamicId status:(BOOL)status;
///删除话题成功
- (void)deleteMonentsSuccess:(NSString *)monentsInfo;
- (void)deleteMomentsSuccess:(NSString *)monentsInfo;
///屏蔽
- (void)requesstShieldingSuccess:(NSString *)monentsInfo;
@end

View File

@@ -0,0 +1,29 @@
//
// XPMomentsRecommendProtocol.h
// YUMI
//
// Created by YUMI on 2022/5/13.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@protocol XPMomentsRecommendProtocol <NSObject>
///获取推荐列表从成功
- (void)getMomentsRecommendListSuccess:(NSArray *)array state:(int)state;
///获取推荐列表失败
- (void)getMomentsRecommendListFail:(NSString *)msg state:(int)state;
///获取话题列表成功
- (void)momentsTopicListSuccess:(NSArray *)array;
///点赞/取消动态成功
- (void)likeMomentsSuccess:(NSString *)dynamicId status:(BOOL)status;
///删除话题成功
- (void)deleteMomentsSuccess:(NSString *)monentsInfo;
///屏蔽
- (void)requestShieldingSuccess:(NSString *)monentsInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,21 @@
//
// YMMonentsTopicListProtocol.h
// YUMI
//
// Created by YUMI on 2022/8/18.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@protocol XPMomentsTopicListProtocol <NSObject>
- (void)getMomentsTopicListSuccess:(NSArray *)list state:(int)state;
- (void)getMomentsTopicFail:(NSString *)message state:(int)state;
///删除话题成功
- (void)deleteMomentsSuccess:(NSString *)momentsInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -8,10 +8,10 @@
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsListInfoModel;
@class MomentsListInfoModel;
@protocol XPMonentsAttentionProtocol <NSObject>
///获取最新列表从成功
- (void)getMonentsAttentionListSuccess:(MonentsListInfoModel *)listInfo state:(int)state;
- (void)getMonentsAttentionListSuccess:(MomentsListInfoModel *)listInfo state:(int)state;
///获取最新列表失败
- (void)getMonentsAttentionListFail:(NSString *)msg state:(int)state;

View File

@@ -8,10 +8,10 @@
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel, MonentsCommentListModel, MonentsCommentReplyModel;
@class MomentsInfoModel, MonentsCommentListModel, MonentsCommentReplyModel;
@protocol XPMonentsDetailProtocol <NSObject>
///获取动态详情成功
- (void)getMonentsDetailSuccess:(MonentsInfoModel *)commentInfo;
- (void)getMonentsDetailSuccess:(MomentsInfoModel *)commentInfo;
///获取动态 评论的列表
- (void)getMonentsCommentListSuccess:(MonentsCommentListModel *)replyList state:(int)state;

View File

@@ -8,10 +8,10 @@
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsListInfoModel;
@class MomentsListInfoModel;
@protocol XPMonentsLatestProtocol <NSObject>
///获取最新列表从成功
- (void)getMonentsLatestListSuccess:(MonentsListInfoModel *)listInfo state:(int)state;
- (void)getMonentsLatestListSuccess:(MomentsListInfoModel *)listInfo state:(int)state;
///获取最新列表从失败
- (void)getMonentsLatestListFail:(NSString *)msg state:(int)state;

View File

@@ -1,29 +0,0 @@
//
// YMMonentsRecommendProtocol.h
// YUMI
//
// Created by YUMI on 2022/5/13.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@protocol XPMonentsRecommendProtocol <NSObject>
///获取推荐列表从成功
- (void)getMonentsRecommendListSuccess:(NSArray *)array state:(int)state;
///获取推荐列表失败
- (void)getMonentsRecommendListFail:(NSString *)msg state:(int)state;
///获取话题列表成功
- (void)monentsTopicListSuccess:(NSArray *)array;
///点赞/取消动态成功
- (void)likeMonentsSuccess:(NSString *)dynamicId status:(BOOL)status;
///删除话题成功
- (void)deleteMonentsSuccess:(NSString *)monentsInfo;
///屏蔽
- (void)requesstShieldingSuccess:(NSString *)monentsInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -8,9 +8,9 @@
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsListInfoModel;
@class MomentsListInfoModel;
@protocol XPMonentsTopicLatestProtocol <NSObject>
- (void)getMonentsTopicLatestListSuccess:(MonentsListInfoModel *)info state:(int)state;
- (void)getMonentsTopicLatestListSuccess:(MomentsListInfoModel *)info state:(int)state;
- (void)getMonentsTopicLatestListFail:(NSString *)msg state:(int)state;

View File

@@ -1,21 +0,0 @@
//
// YMMonentsTopicListProtocol.h
// YUMI
//
// Created by YUMI on 2022/8/18.
//
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@protocol XPMonentsTopicListProtocol <NSObject>
- (void)getMonentsTopicListSuccess:(NSArray *)list state:(int)state;
- (void)getMoentsTopicFail:(NSString *)message state:(int)state;
///删除话题成功
- (void)deleteMonentsSuccess:(NSString *)monentsInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -8,10 +8,10 @@
#import <Foundation/Foundation.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsListInfoModel;
@class MomentsListInfoModel;
@protocol XPMonentsTopicRecommendProtocol <NSObject>
- (void)getMonentsTopicRecommendListSuccess:(MonentsListInfoModel *)info state:(int)state;
- (void)getMonentsTopicRecommendListSuccess:(MomentsListInfoModel *)info state:(int)state;
- (void)getMonentsTopicRecommendListFail:(NSString *)msg state:(int)state;

View File

@@ -7,13 +7,13 @@
#import <UIKit/UIKit.h>
@class MonentsInfoModel;
@class MomentsInfoModel;
NS_ASSUME_NONNULL_BEGIN
@interface XPMomentListCollectionViewCell : UICollectionViewCell
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
@property (nonatomic,strong) MomentsInfoModel *monentsInfo;
@end

View File

@@ -11,7 +11,7 @@
#import "NetImageView.h"
#import "NSArray+Safe.h"
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
@interface XPMomentListCollectionViewCell()
@@ -83,11 +83,11 @@
}
#pragma mark - Getters And Setters
- (void)setMonentsInfo:(MonentsInfoModel *)monentsInfo {
- (void)setMonentsInfo:(MomentsInfoModel *)monentsInfo {
_monentsInfo = monentsInfo;
if (_monentsInfo) {
if (_monentsInfo.dynamicResList.count > 0) {
MonentsPicInfoModel * picInfo = [_monentsInfo.dynamicResList xpSafeObjectAtIndex:0];
MomentsPicInfoModel * picInfo = [_monentsInfo.dynamicResList xpSafeObjectAtIndex:0];
self.coverImageView.imageUrl = picInfo.resUrl;
}else{
self.coverImageView.imageUrl = _monentsInfo.avatar;

View File

@@ -9,7 +9,7 @@
NS_ASSUME_NONNULL_BEGIN
@interface XPMonentsEmptyTableViewCell : UITableViewCell
@interface XPMomentsEmptyTableViewCell : UITableViewCell
@end

View File

@@ -5,19 +5,19 @@
// Created by YUMI on 2022/5/13.
//
#import "XPMonentsEmptyTableViewCell.h"
#import "XPMomentsEmptyTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "DJDKMIMOMColor.h"
#import "UIImageConstant.h"
@interface XPMonentsEmptyTableViewCell ()
@interface XPMomentsEmptyTableViewCell ()
@property (nonatomic,strong) UIImageView *emptyImageView;
@property (nonatomic,strong) UILabel *titleLabel;
@end
@implementation XPMonentsEmptyTableViewCell
@implementation XPMomentsEmptyTableViewCell
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {

View File

@@ -0,0 +1,40 @@
//
// XPMonentsTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/11.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MomentsInfoModel, XPMomentsTableViewCell;
@protocol XPMomentsTableViewCellDelegate <NSObject>
///点击了点赞
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClickLike:(MomentsInfoModel *)momentsInfo;
///点击了删除
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicDelete:(MomentsInfoModel *)momentsInfo;
@optional
///点击了评论
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicCommon:(MomentsInfoModel *)momentsInfo;
///点击了展开
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicFold:(MomentsInfoModel *)momentsInfo;
///屏蔽
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicShielding:(MomentsInfoModel *)momentsInfo;
@end
@interface XPMomentsTableViewCell : UITableViewCell
@property (nonatomic,strong) MomentsInfoModel *mineMomentsInfo;
@property (nonatomic,strong) MomentsInfoModel *momentsInfo;
@property (nonatomic,assign) BOOL isFillet;
@property (nonatomic,assign) BOOL isTopic;///是否是话题页
///代理
@property (nonatomic,weak) id<XPMomentsTableViewCellDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -1,58 +1,57 @@
//
// XPMonentsTableViewCell.m
// XPMomentsTableViewCell.m
// xplan-ios
//
// Created by on 2022/5/11.
//
#import "XPMonentsTableViewCell.h"
#import "XPMomentsTableViewCell.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "NetImageView.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "SDPhotoBrowser.h"
#import "XCCurrentVCStackManager.h"
///Model
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
///View
#import "XPMonentsUserInfoView.h"
#import "XPMonentsPhotoView.h"
#import "XPMonentsTooBarView.h"
#import "XPMoentsTopicView.h"
#import "XPMonentsContentView.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMonentTopicContainerViewController.h"
#import "XPMomentsUserInfoView.h"
#import "XPMomentsPhotoView.h"
#import "XPMomentsTooBarView.h"
#import "XPMomentsTopicView.h"
#import "XPMomentsContentView.h"
#import "XPMomentsLayoutConfig.h"
#import "XPMomentTopicContainerViewController.h"
#import "XPMineUserInfoViewController.h"
#import "XPRoomViewController.h"
@interface XPMonentsTableViewCell ()<XPMonentsTooBarViewDelegate, XPMonentsTooBarViewDelegate, XPMonentsPhotoViewDelegate, SDPhotoBrowserDelegate, XPMonentsUserInfoViewDelegate, XPMonentsContentViewDelegate>
@interface XPMomentsTableViewCell ()<XPMomentsTooBarViewDelegate, XPMomentsTooBarViewDelegate, XPMomentsPhotoViewDelegate, SDPhotoBrowserDelegate, XPMomentsUserInfoViewDelegate, XPMomentsContentViewDelegate>
/// stackView
@property (nonatomic,strong) UIView * backView;
///
@property (nonatomic,strong) UIStackView *stackView;
///
@property (nonatomic,strong) XPMonentsUserInfoView * userInfoView;
@property (nonatomic,strong) XPMomentsUserInfoView * userInfoView;
///
@property (nonatomic,strong) XPMonentsContentView *textView;
@property (nonatomic,strong) XPMomentsContentView *textView;
///
@property (nonatomic,strong) XPMonentsPhotoView *photoView;
@property (nonatomic,strong) XPMomentsPhotoView *photoView;
///
@property (nonatomic,strong) XPMonentsTooBarView *toolBarView;
@property (nonatomic,strong) XPMomentsTooBarView *toolBarView;
///
@property (nonatomic,strong) XPMoentsTopicView *topicView;
@property (nonatomic,strong) XPMomentsTopicView *topicView;
@property (nonatomic,strong) UIView *lineView;
@end
@implementation XPMonentsTableViewCell
@implementation XPMomentsTableViewCell
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
if ([reuseIdentifier isEqualToString:@"XPMonentsDynamicTableViewCell"]) {
if ([reuseIdentifier isEqualToString:@"XPMomentsDynamicTableViewCell"]) {
[self initDynamicSubViews];
[self initDynamicSubViewConstraints];
}else{
[self initSubViews];
[self initSubViewConstraints];
@@ -68,7 +67,6 @@
self.backgroundColor = [UIColor clearColor];
self.selectionStyle = UITableViewCellSelectionStyleNone;
[self.contentView addSubview:self.backView];
[self.backView addSubview:self.stackView];
[self.backView addSubview:self.toolBarView];
@@ -86,8 +84,6 @@
make.trailing.mas_equalTo(-15);
make.top.bottom.equalTo(self.contentView);
}];
[self.textView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(20);
@@ -100,7 +96,7 @@
}];
[self.topicView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(kMONENTS_TEXT_TOPIC_HEIGHT);
make.height.mas_equalTo(kMOMENTS_TEXT_TOPIC_HEIGHT);
}];
[self.photoView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(KScreenWidth-30);
@@ -149,71 +145,71 @@
[self.stackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(self.backView).offset(kMONENTS_CONTENT_LEFT_PADDING);
make.trailing.mas_equalTo(self.backView).offset(-kMONENTS_CONTENT_RIGHT_PADDING);
make.top.mas_equalTo(self.userInfoView.mas_bottom).offset(kMONENTS_CONTENT_SPACAE_HEIGHT);
make.top.mas_equalTo(self.userInfoView.mas_bottom).offset(kMOMENTS_CONTENT_SPACAE_HEIGHT);
}];
[self.topicView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(kMONENTS_TEXT_TOPIC_HEIGHT);
make.height.mas_equalTo(kMOMENTS_TEXT_TOPIC_HEIGHT);
}];
[self.toolBarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.mas_equalTo(self.backView);
make.top.mas_equalTo(self.stackView.mas_bottom);
make.height.mas_equalTo(kMONENTS_TOOL_BAR_HEIGHT);
make.height.mas_equalTo(kMOMENTS_TOOL_BAR_HEIGHT);
}];
}
#pragma mark - XPMonentsUserInfoViewDelegate
- (void)xPMonentsUserInfoView:(XPMonentsUserInfoView *)view didClickEnterRoom:(MonentsInfoModel *)monents {
- (void)XPMomentsUserInfoView:(XPMomentsUserInfoView *)view didClickEnterRoom:(MomentsInfoModel *)monents {
if (monents.inRoomUid.integerValue > 0) {
[XPRoomViewController openRoom:monents.inRoomUid viewController:[XCCurrentVCStackManager shareManager].getCurrentVC];
}
}
- (void)xPMonentsUserInfoView:(XPMonentsUserInfoView *)view didClickAvatar:(MonentsInfoModel *)monents {
- (void)XPMomentsUserInfoView:(XPMomentsUserInfoView *)view didClickAvatar:(MomentsInfoModel *)monents {
XPMineUserInfoViewController * userInfoVC = [[XPMineUserInfoViewController alloc] init];
userInfoVC.uid = monents.uid.integerValue;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:userInfoVC animated:YES];
}
- (void)xPMonentsTooBarView:(XPMonentsUserInfoView *)view didClickDelete:(MonentsInfoModel *)monentsInfo {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTableViewCell:didClicDelete:)]) {
[self.delegate xPMonentsTableViewCell:self didClicDelete:monentsInfo];
- (void)XPMomentsTooBarView:(XPMomentsUserInfoView *)view didClickDelete:(MomentsInfoModel *)monentsInfo {
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTableViewCell:didClicDelete:)]) {
[self.delegate XPMomentsTableViewCell:self didClicDelete:monentsInfo];
}
}
#pragma mark - XPMonentsTooBarViewDelegate
- (void)xPMonentsTooBarView:(XPMonentsTooBarView *)view didClickLike:(MonentsInfoModel *)monentsInfo {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTableViewCell:didClickLike:)]) {
[self.delegate xPMonentsTableViewCell:self didClickLike:monentsInfo];
- (void)XPMomentsTooBarView:(XPMomentsTooBarView *)view didClickLike:(MomentsInfoModel *)monentsInfo {
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTableViewCell:didClickLike:)]) {
[self.delegate XPMomentsTableViewCell:self didClickLike:monentsInfo];
}
}
- (void)xPMonentsTooBarView:(XPMonentsTooBarView *)view didClickCommon:(MonentsInfoModel *)monentsInfo {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTableViewCell:didClicCommon:)]) {
[self.delegate xPMonentsTableViewCell:self didClicCommon:monentsInfo];
- (void)XPMomentsTooBarView:(XPMomentsTooBarView *)view didClickCommon:(MomentsInfoModel *)monentsInfo {
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTableViewCell:didClicCommon:)]) {
[self.delegate XPMomentsTableViewCell:self didClicCommon:monentsInfo];
}
}
- (void)xPMonentsTooBarView:(XPMonentsTooBarView *)view didClickShielding:(MonentsInfoModel *)monentsInfo{
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTableViewCell:didClicShielding:)]) {
[self.delegate xPMonentsTableViewCell:self didClicShielding:monentsInfo];
- (void)XPMomentsTooBarView:(XPMomentsTooBarView *)view didClickShielding:(MomentsInfoModel *)monentsInfo{
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTableViewCell:didClicShielding:)]) {
[self.delegate XPMomentsTableViewCell:self didClicShielding:monentsInfo];
}
}
#pragma mark - XPMonentsContentViewDelegate
- (void)xPMonentsContentView:(XPMonentsContentView *)view didClickFold:(MonentsInfoModel *)monentsInfo {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTableViewCell:didClicFold:)]) {
[self.delegate xPMonentsTableViewCell:self didClicFold:monentsInfo];
- (void)xPMonentsContentView:(XPMomentsContentView *)view didClickFold:(MomentsInfoModel *)monentsInfo {
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTableViewCell:didClicFold:)]) {
[self.delegate XPMomentsTableViewCell:self didClicFold:monentsInfo];
}
}
#pragma mark - SDPhotoBrowserDelegate
- (NSURL *)photoBrowser:(SDPhotoBrowser *)browser highQualityImageURLForIndex:(NSInteger)index {
NSArray *list = self.monentsInfo != nil ? self.monentsInfo.dynamicResList : self.mineMonentsInfo.dynamicResList;
NSArray *list = self.momentsInfo != nil ? self.momentsInfo.dynamicResList : self.mineMomentsInfo.dynamicResList;
if(index < list.count){
MonentsPicInfoModel *picinfo = [list xpSafeObjectAtIndex:index];
return [NSURL URLWithString:picinfo.resUrl];
MomentsPicInfoModel *picInfo = [list xpSafeObjectAtIndex:index];
return [NSURL URLWithString:picInfo.resUrl];
}
return [NSURL URLWithString:@""];;
}
@@ -223,8 +219,8 @@
}
#pragma mark - XPMonentsPhotoViewDelegate
- (void)xPMonentsPhotoView:(XPMonentsPhotoView *)view didClickImage:(NSInteger)index {
NSInteger count = self.monentsInfo != nil ? self.monentsInfo.dynamicResList.count : self.mineMonentsInfo.dynamicResList.count;
- (void)xPMonentsPhotoView:(XPMomentsPhotoView *)view didClickImage:(NSInteger)index {
NSInteger count = self.momentsInfo != nil ? self.momentsInfo.dynamicResList.count : self.mineMomentsInfo.dynamicResList.count;
SDPhotoBrowser *browser = [[SDPhotoBrowser alloc]init];
browser.sourceImagesContainerView = self;
browser.delegate = self;
@@ -236,9 +232,9 @@
#pragma mark - Event Response
- (void)didTapTopicRecognizer {
long worldId = self.monentsInfo != nil ? self.monentsInfo.worldId : self.mineMonentsInfo.worldId;
long worldId = self.momentsInfo != nil ? self.momentsInfo.worldId : self.mineMomentsInfo.worldId;
if (worldId > 0) {
XPMonentTopicContainerViewController * topicListVC = [[XPMonentTopicContainerViewController alloc] init];
XPMomentTopicContainerViewController * topicListVC = [[XPMomentTopicContainerViewController alloc] init];
topicListVC.worldId = [NSString stringWithFormat:@"%ld", worldId];
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:topicListVC animated:YES];
@@ -263,17 +259,17 @@
}
}
-(void)setMineMonentsInfo:(MonentsInfoModel *)mineMonentsInfo{
_mineMonentsInfo = mineMonentsInfo;
if (_mineMonentsInfo) {
self.userInfoView.monentsInfo = _mineMonentsInfo;
self.textView.monentsInfo = _mineMonentsInfo;
self.photoView.mineDynamicResList = _mineMonentsInfo.dynamicResList;
self.topicView.monentsInfo = _mineMonentsInfo;
self.toolBarView.monentsInfo = _mineMonentsInfo;
if (_mineMonentsInfo.type == MonentsContentType_Picture) {
-(void)setMineMomentsInfo:(MomentsInfoModel *)mineMonentsInfo{
_mineMomentsInfo = mineMonentsInfo;
if (_mineMomentsInfo) {
self.userInfoView.momentsInfo = _mineMomentsInfo;
self.textView.monentsInfo = _mineMomentsInfo;
self.photoView.mineDynamicResList = _mineMomentsInfo.dynamicResList;
self.topicView.monentsInfo = _mineMomentsInfo;
self.toolBarView.momentsInfo = _mineMomentsInfo;
if (_mineMomentsInfo.type == MomentsContentType_Picture) {
self.photoView.hidden = NO;
CGFloat picHeight = _mineMonentsInfo.picHeight <=0 ? [XPMonentsLayoutConfig monentsPicHeight:_mineMonentsInfo] : _mineMonentsInfo.picHeight;
CGFloat picHeight = _mineMomentsInfo.picHeight <=0 ? [XPMomentsLayoutConfig momentsPicHeight:_mineMomentsInfo] : _mineMomentsInfo.picHeight;
[self.photoView mas_updateConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(picHeight);
}];
@@ -284,11 +280,11 @@
}];
}
CGFloat contentHeight = [XPMonentsLayoutConfig monentsContentHeight:_mineMonentsInfo] + 24;
CGFloat contentHeight = [XPMomentsLayoutConfig momentsContentHeight:_mineMomentsInfo] + 24;
self.topicView.hidden = _mineMonentsInfo.worldId <= 0;
self.topicView.hidden = _mineMomentsInfo.worldId <= 0;
if(_mineMonentsInfo.squareTop && _mineMonentsInfo.content.length == 0){
if(_mineMomentsInfo.squareTop && _mineMomentsInfo.content.length == 0){
[self.textView mas_updateConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(contentHeight + 20);
}];
@@ -300,18 +296,18 @@
}
}
- (void)setMonentsInfo:(MonentsInfoModel *)monentsInfo {
_monentsInfo = monentsInfo;
if (_monentsInfo) {
self.userInfoView.monentsInfo = _monentsInfo;
- (void)setMomentsInfo:(MomentsInfoModel *)monentsInfo {
_momentsInfo = monentsInfo;
if (_momentsInfo) {
self.userInfoView.momentsInfo = _momentsInfo;
self.textView.isTopic = _isTopic;
self.textView.monentsInfo = _monentsInfo;
self.photoView.dynamicResList = _monentsInfo.dynamicResList;
self.topicView.monentsInfo = _monentsInfo;
self.toolBarView.monentsInfo = _monentsInfo;
if (_monentsInfo.type == MonentsContentType_Picture) {
self.textView.monentsInfo = _momentsInfo;
self.photoView.dynamicResList = _momentsInfo.dynamicResList;
self.topicView.monentsInfo = _momentsInfo;
self.toolBarView.momentsInfo = _momentsInfo;
if (_momentsInfo.type == MomentsContentType_Picture) {
self.photoView.hidden = NO;
CGFloat picHeight = _monentsInfo.picHeight <=0 ? [XPMonentsLayoutConfig monentsPicHeight:_monentsInfo] : _monentsInfo.picHeight;
CGFloat picHeight = _momentsInfo.picHeight <=0 ? [XPMomentsLayoutConfig momentsPicHeight:_momentsInfo] : _momentsInfo.picHeight;
[self.photoView mas_updateConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(picHeight);
}];
@@ -322,11 +318,11 @@
}];
}
CGFloat contentHeight = [XPMonentsLayoutConfig monentsContentHeight:_monentsInfo] + 24;
CGFloat contentHeight = [XPMomentsLayoutConfig momentsContentHeight:_momentsInfo] + 24;
self.topicView.hidden = monentsInfo.worldId <= 0;
if(_monentsInfo.topicTop && _monentsInfo.content.length == 0){
if(_momentsInfo.topicTop && _momentsInfo.content.length == 0){
[self.textView mas_updateConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(contentHeight + 20);
}];
@@ -347,17 +343,17 @@
return _backView;
}
- (XPMonentsUserInfoView *)userInfoView {
- (XPMomentsUserInfoView *)userInfoView {
if (!_userInfoView) {
_userInfoView = [[XPMonentsUserInfoView alloc] init];
_userInfoView = [[XPMomentsUserInfoView alloc] init];
_userInfoView.delegate = self;
}
return _userInfoView;
}
- (XPMonentsPhotoView *)photoView {
- (XPMomentsPhotoView *)photoView {
if (!_photoView) {
_photoView = [[XPMonentsPhotoView alloc] init];
_photoView = [[XPMomentsPhotoView alloc] init];
_photoView.delegate = self;
}
return _photoView;
@@ -374,29 +370,29 @@
return _stackView;
}
- (XPMonentsContentView *)textView {
- (XPMomentsContentView *)textView {
if (!_textView) {
_textView = [[XPMonentsContentView alloc] init];
_textView = [[XPMomentsContentView alloc] init];
_textView.delegate = self;
}
return _textView;
}
- (XPMoentsTopicView *)topicView {
- (XPMomentsTopicView *)topicView {
if (!_topicView) {
_topicView = [[XPMoentsTopicView alloc] initWithFrame:CGRectZero];
_topicView = [[XPMomentsTopicView alloc] initWithFrame:CGRectZero];
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didTapTopicRecognizer)];
[_topicView addGestureRecognizer:tap];
}
return _topicView;
}
- (XPMonentsTooBarView *)toolBarView {
- (XPMomentsTooBarView *)toolBarView {
if (!_toolBarView) {
if ([self.reuseIdentifier isEqualToString:@"XPMonentsDynamicTableViewCell"]){
_toolBarView = [[XPMonentsTooBarView alloc]initDynamicWithFrame:CGRectZero];
if ([self.reuseIdentifier isEqualToString:@"XPMomentsDynamicTableViewCell"]){
_toolBarView = [[XPMomentsTooBarView alloc]initDynamicWithFrame:CGRectZero];
}else{
_toolBarView = [[XPMonentsTooBarView alloc] init];
_toolBarView = [[XPMomentsTooBarView alloc] init];
}
_toolBarView.delegate = self;

View File

@@ -12,7 +12,7 @@
///Tool
#import "NetImageView.h"
#import "DJDKMIMOMColor.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "NSString+Utils.h"
#import "QEmotionHelper.h"
#import "AccountInfoStorage.h"

View File

@@ -10,7 +10,7 @@
#import <Masonry/Masonry.h>
///Tool
#import "DJDKMIMOMColor.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
@interface XPMonentsReplyMoreTableViewCell ()
///

View File

@@ -13,7 +13,7 @@
#import "DJDKMIMOMColor.h"
#import "NetImageView.h"
#import "YUMIMacroUitls.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "NSString+Utils.h"
#import "QEmotionHelper.h"
///Model
@@ -147,7 +147,7 @@
- (YYLabel *)contentLabel {
if (!_contentLabel) {
_contentLabel = [[YYLabel alloc] init];
_contentLabel.preferredMaxLayoutWidth = KMONENTS_COMMENT_REPLY_MAX_WIDTH;
_contentLabel.preferredMaxLayoutWidth = kMOMENTS_COMMENT_REPLY_MAX_WIDTH;
_contentLabel.numberOfLines = 0;
}
return _contentLabel;

View File

@@ -1,40 +0,0 @@
//
// XPMonentsTableViewCell.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/11.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel, XPMonentsTableViewCell;
@protocol XPMonentsTableViewCellDelegate <NSObject>
///点击了点赞
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClickLike:(MonentsInfoModel *)monentsInfo;
///点击了删除
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicDelete:(MonentsInfoModel *)monentsInfo;
@optional
///点击了评论
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicCommon:(MonentsInfoModel *)monentsInfo;
///点击了展开
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicFold:(MonentsInfoModel *)monentsInfo;
///屏蔽
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicShielding:(MonentsInfoModel *)monentsInfo;
@end
@interface XPMonentsTableViewCell : UITableViewCell
@property (nonatomic,strong) MonentsInfoModel *mineMonentsInfo;
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
@property (nonatomic,assign) BOOL isFillet;
@property (nonatomic,assign) BOOL isTopic;///是否是话题页
///代理
@property (nonatomic,weak) id<XPMonentsTableViewCellDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -8,9 +8,9 @@
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsTopicModel;
@class MomentsTopicModel;
@interface XPMonentsTopicCollectionViewCell : UICollectionViewCell
@property (nonatomic,strong) MonentsTopicModel *topicInfo;
@property (nonatomic,strong) MomentsTopicModel *topicInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -12,7 +12,7 @@
#import "UIImage+Utils.h"
///Model
#import "MonentsTopicModel.h"
#import "MomentsTopicModel.h"
@interface XPMonentsTopicCollectionViewCell ()
@@ -76,7 +76,7 @@
}
#pragma mark - Getters And Setters
- (void)setTopicInfo:(MonentsTopicModel *)topicInfo {
- (void)setTopicInfo:(MomentsTopicModel *)topicInfo {
_topicInfo = topicInfo;
if (_topicInfo) {
self.topicLabel.text = _topicInfo.name;

View File

@@ -8,10 +8,10 @@
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class XPMoentsTopicListView, MonentsTopicModel;
@class XPMoentsTopicListView, MomentsTopicModel;
@protocol XPMoentsTopicListViewDelegate <NSObject>
- (void)xPMoentsTopicListView:(XPMoentsTopicListView *)view didSelectItem:(MonentsTopicModel *)topicInfo;
- (void)xPMoentsTopicListView:(XPMoentsTopicListView *)view didSelectItem:(MomentsTopicModel *)topicInfo;
@end
@interface XPMoentsTopicListView : UIView

View File

@@ -11,11 +11,11 @@
#import <MJRefresh/MJRefresh.h>
///Tool
#import "DJDKMIMOMColor.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "NetImageView.h"
#import "XNDJTDDLoadingTool.h"
#import "AccountInfoStorage.h"
#import "MonentsTopicModel.h"
#import "MomentsTopicModel.h"
#import "YUMIMacroUitls.h"
#import "NSArray+Safe.h"
@@ -26,7 +26,7 @@
@property (nonatomic,strong) UILabel *nameLabel;
///
@property (nonatomic,strong) UILabel *desLabel;
@property (nonatomic,strong) MonentsTopicModel *topicInfo;
@property (nonatomic,strong) MomentsTopicModel *topicInfo;
@end
@implementation XPMoentsTopicListTableViewCell
@@ -68,7 +68,7 @@
}
#pragma mark - Getters And Setters
- (void)setTopicInfo:(MonentsTopicModel *)topicInfo {
- (void)setTopicInfo:(MomentsTopicModel *)topicInfo {
_topicInfo= topicInfo;
if (_topicInfo) {
self.avatarImageView.imageUrl = _topicInfo.icon;
@@ -151,11 +151,11 @@
self.page = 1;
NSString * pageStr = [NSString stringWithFormat:@"%d", self.page];
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsTopicList:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsTopicList:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[self.tableView.mj_header endRefreshing];
if (code == 200) {
[self.datasource removeAllObjects];
NSArray * array = [MonentsTopicModel modelsWithArray:data.data];
NSArray * array = [MomentsTopicModel modelsWithArray:data.data];
[self.datasource addObjectsFromArray:array];
[self.tableView reloadData];
} else {
@@ -168,10 +168,10 @@
self.page++;
NSString * pageStr = [NSString stringWithFormat:@"%d", self.page];
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsTopicList:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsTopicList:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[self.tableView.mj_footer endRefreshing];
if (code == 200) {
NSArray * array = [MonentsTopicModel modelsWithArray:data.data];
NSArray * array = [MomentsTopicModel modelsWithArray:data.data];
if (array.count > 0) {
[self.datasource addObjectsFromArray:array];
[self.tableView reloadData];
@@ -228,7 +228,7 @@
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:YES];
if (self.datasource.count > 0) {
MonentsTopicModel * infor = [self.datasource xpSafeObjectAtIndex:indexPath.row];
MomentsTopicModel * infor = [self.datasource xpSafeObjectAtIndex:indexPath.row];
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMoentsTopicListView:didSelectItem:)]) {
[self.delegate xPMoentsTopicListView:self didSelectItem:infor];
}

View File

@@ -0,0 +1,28 @@
//
// XPMonentsContentView.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/13.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MomentsInfoModel, XPMomentsContentView;
@protocol XPMomentsContentViewDelegate <NSObject>
///点击这折叠
- (void)xPMonentsContentView:(XPMomentsContentView *)view didClickFold:(MomentsInfoModel *)monentsInfo;
@end
@interface XPMomentsContentView : UIView
///
@property (nonatomic,assign) BOOL isTopic;
@property (nonatomic,strong) MomentsInfoModel *monentsInfo;
///代理
@property (nonatomic,weak) id<XPMomentsContentViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,17 +5,17 @@
// Created by on 2022/5/13.
//
#import "XPMonentsContentView.h"
#import "XPMomentsContentView.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "UIButton+EnlargeTouchArea.h"
///Model
#import "MonentsInfoModel.h"
@interface XPMonentsContentView ()
#import "MomentsInfoModel.h"
@interface XPMomentsContentView ()
///
@property (nonatomic,strong) UIStackView *stackView;
///
@@ -27,7 +27,7 @@
@end
@implementation XPMonentsContentView
@implementation XPMomentsContentView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
@@ -56,7 +56,7 @@
make.height.mas_equalTo(14);
}];
[self.foldButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(kMONENTS_FOLD_HEIGHT);
make.height.mas_equalTo(kMOMENTS_FOLD_HEIGHT);
}];
}
@@ -107,7 +107,7 @@
}
#pragma mark - Getters And Setters
- (void)setMonentsInfo:(MonentsInfoModel *)monentsInfo {
- (void)setMonentsInfo:(MomentsInfoModel *)monentsInfo {
_monentsInfo = monentsInfo;
if (_monentsInfo) {
self.timeLabel.text = [NSString stringWithTimeStamp:_monentsInfo.publishTime];
@@ -121,7 +121,7 @@
if (layout.rowCount > 6) {
self.foldButton.hidden = NO;
[self.foldButton mas_remakeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(kMONENTS_FOLD_HEIGHT);
make.height.mas_equalTo(kMOMENTS_FOLD_HEIGHT);
}];
} else {
self.foldButton.hidden = YES;
@@ -133,7 +133,7 @@
if (monentsInfo.numberOfText > 6) {
self.foldButton.hidden = NO;
[self.foldButton mas_remakeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(kMONENTS_FOLD_HEIGHT);
make.height.mas_equalTo(kMOMENTS_FOLD_HEIGHT);
}];
} else {
self.foldButton.hidden = YES;

View File

@@ -0,0 +1,26 @@
//
// YMMonentsPhotoView.h
// YUMI
//
// Created by YUMI on 2022/5/12.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MomentsPicInfoModel, XPMomentsPhotoView;
@protocol XPMomentsPhotoViewDelegate <NSObject>
- (void)xPMonentsPhotoView:(XPMomentsPhotoView *)view didClickImage:(NSInteger)index;
@end
@interface XPMomentsPhotoView : UIView
///发布的内容
@property (nonatomic,copy) NSArray<MomentsPicInfoModel *> *dynamicResList;
@property (nonatomic,copy) NSArray<MomentsPicInfoModel *> *mineDynamicResList;
///代理
@property (nonatomic,weak) id<XPMomentsPhotoViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,16 +5,16 @@
// Created by on 2022/5/12.
//
#import "XPMonentsPhotoView.h"
#import "XPMomentsPhotoView.h"
///Third
#import <Masonry/Masonry.h>
///Tool
#import "NetImageView.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
///Model
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
@interface XPMonentsPhotoView ()
@interface XPMomentsPhotoView ()
///
@property (nonatomic,strong) NetImageView *firstImageView;
///
@@ -37,7 +37,7 @@
@end
@implementation XPMonentsPhotoView
@implementation XPMomentsPhotoView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
@@ -76,7 +76,7 @@
#pragma mark - Getters And Setters
-(void)setMineDynamicResList:(NSArray<MonentsPicInfoModel *> *)mineDynamicResList{
-(void)setMineDynamicResList:(NSArray<MomentsPicInfoModel *> *)mineDynamicResList{
_mineDynamicResList = mineDynamicResList;
[self hiddenAllImageView];
if ( _mineDynamicResList.count == 0) {
@@ -87,19 +87,19 @@
make.size.mas_equalTo(CGSizeMake(KScreenWidth-27*2, KScreenWidth-27*2));
make.leading.top.mas_equalTo(self);
}];
MonentsPicInfoModel * picInfo = [ _mineDynamicResList xpSafeObjectAtIndex:0];
MomentsPicInfoModel * picInfo = [ _mineDynamicResList xpSafeObjectAtIndex:0];
if(picInfo != nil){
self.firstImageView.imageUrl = picInfo.resUrl;
}
} else if( _mineDynamicResList.count == 2) {
self.firstImageView.hidden = NO;
CGFloat itemWidth = (KScreenWidth-27*2 - kMONENTS_PIC_SPACE) / 2;
CGFloat itemWidth = (KScreenWidth-27*2 - kMOMENTS_PIC_SPACE) / 2;
[self.firstImageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(itemWidth, itemWidth));
make.leading.top.mas_equalTo(self);
}];
MonentsPicInfoModel * picInfo = [ _mineDynamicResList xpSafeObjectAtIndex:0];
MomentsPicInfoModel * picInfo = [ _mineDynamicResList xpSafeObjectAtIndex:0];
if(picInfo != nil){
self.firstImageView.imageUrl = picInfo.resUrl;
@@ -107,10 +107,10 @@
[self.secondImageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(itemWidth, itemWidth));
make.top.mas_equalTo(self);
make.leading.mas_equalTo(self.firstImageView.mas_trailing).offset(kMONENTS_PIC_SPACE);
make.leading.mas_equalTo(self.firstImageView.mas_trailing).offset(kMOMENTS_PIC_SPACE);
}];
}
MonentsPicInfoModel * secondPicInfo = [ _mineDynamicResList xpSafeObjectAtIndex:1];
MomentsPicInfoModel * secondPicInfo = [ _mineDynamicResList xpSafeObjectAtIndex:1];
if(secondPicInfo != nil){
self.secondImageView.imageUrl = secondPicInfo.resUrl;
@@ -118,7 +118,7 @@
} else{
for (int i = 0; i < _mineDynamicResList.count; i++) {
MonentsPicInfoModel * picInfo = [ _mineDynamicResList xpSafeObjectAtIndex:i];
MomentsPicInfoModel * picInfo = [ _mineDynamicResList xpSafeObjectAtIndex:i];
if (i < self.subViewArray.count) {
NetImageView * imageView = [self.subViewArray xpSafeObjectAtIndex:i];
imageView.hidden = NO;
@@ -126,7 +126,7 @@
}
}
CGFloat itemWidth = (KScreenWidth-27*2 - kMONENTS_PIC_SPACE * 2) / 3;
CGFloat itemWidth = (KScreenWidth-27*2 - kMOMENTS_PIC_SPACE * 2) / 3;
for (int i = 0; i < self.subViewArray.count; i++) {
NSInteger page = i % 3;
NSInteger line = i / 3;
@@ -134,8 +134,8 @@
if(imageView == nil)return;
[imageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(itemWidth, itemWidth));
make.leading.mas_equalTo(page * (itemWidth + kMONENTS_PIC_SPACE));
make.top.mas_equalTo(line * (itemWidth + kMONENTS_PIC_SPACE));
make.leading.mas_equalTo(page * (itemWidth + kMOMENTS_PIC_SPACE));
make.top.mas_equalTo(line * (itemWidth + kMOMENTS_PIC_SPACE));
}];
}
@@ -144,7 +144,7 @@
- (void)setDynamicResList:(NSArray<MonentsPicInfoModel *> *)dynamicResList {
- (void)setDynamicResList:(NSArray<MomentsPicInfoModel *> *)dynamicResList {
_dynamicResList = dynamicResList;
[self hiddenAllImageView];
if (_dynamicResList.count == 0) {
@@ -152,35 +152,35 @@
} else if (_dynamicResList.count == 1) {
self.firstImageView.hidden = NO;
[self.firstImageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(kMONENTS_PIC_ONE_WIDTH, kMONENTS_PIC_ONE_WIDTH));
make.size.mas_equalTo(CGSizeMake(kMOMENTS_PIC_ONE_WIDTH, kMOMENTS_PIC_ONE_WIDTH));
make.leading.top.mas_equalTo(self);
}];
MonentsPicInfoModel * picInfo = [_dynamicResList xpSafeObjectAtIndex:0];
MomentsPicInfoModel * picInfo = [_dynamicResList xpSafeObjectAtIndex:0];
self.firstImageView.imageUrl = picInfo.resUrl;
} else if(_dynamicResList.count == 2) {
self.firstImageView.hidden = NO;
CGFloat itemWidth = (kMONENTS_CONTENT_MAX_WIDTH - kMONENTS_PIC_SPACE) / 2;
CGFloat itemWidth = (kMONENTS_CONTENT_MAX_WIDTH - kMOMENTS_PIC_SPACE) / 2;
[self.firstImageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(itemWidth, itemWidth));
make.leading.top.mas_equalTo(self);
}];
MonentsPicInfoModel * picInfo = [_dynamicResList xpSafeObjectAtIndex:0];
MomentsPicInfoModel * picInfo = [_dynamicResList xpSafeObjectAtIndex:0];
self.firstImageView.imageUrl = picInfo.resUrl;
self.secondImageView.hidden = NO;
[self.secondImageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(itemWidth, itemWidth));
make.top.mas_equalTo(self);
make.leading.mas_equalTo(self.firstImageView.mas_trailing).offset(kMONENTS_PIC_SPACE);
make.leading.mas_equalTo(self.firstImageView.mas_trailing).offset(kMOMENTS_PIC_SPACE);
}];
MonentsPicInfoModel * secondPicInfo = [_dynamicResList xpSafeObjectAtIndex:1];
MomentsPicInfoModel * secondPicInfo = [_dynamicResList xpSafeObjectAtIndex:1];
self.secondImageView.imageUrl = secondPicInfo.resUrl;
} else{
for (int i = 0; i < _dynamicResList.count; i++) {
MonentsPicInfoModel * picInfo = [_dynamicResList xpSafeObjectAtIndex:i];
MomentsPicInfoModel * picInfo = [_dynamicResList xpSafeObjectAtIndex:i];
if (i < self.subViewArray.count) {
NetImageView * imageView = [self.subViewArray xpSafeObjectAtIndex:i];
imageView.hidden = NO;
@@ -188,7 +188,7 @@
}
}
CGFloat itemWidth = (kMONENTS_CONTENT_MAX_WIDTH - kMONENTS_PIC_SPACE * 2) / 3;
CGFloat itemWidth = (kMONENTS_CONTENT_MAX_WIDTH - kMOMENTS_PIC_SPACE * 2) / 3;
for (int i = 0; i < self.subViewArray.count; i++) {
NSInteger page = i % 3;
NSInteger line = i / 3;
@@ -196,8 +196,8 @@
if(imageView == nil)return;
[imageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(itemWidth, itemWidth));
make.leading.mas_equalTo(page * (itemWidth + kMONENTS_PIC_SPACE));
make.top.mas_equalTo(line * (itemWidth + kMONENTS_PIC_SPACE));
make.leading.mas_equalTo(page * (itemWidth + kMOMENTS_PIC_SPACE));
make.top.mas_equalTo(line * (itemWidth + kMOMENTS_PIC_SPACE));
}];
}

View File

@@ -0,0 +1,28 @@
//
// YMMonentsRecommendHeaderView.h
// YUMI
//
// Created by YUMI on 2022/5/18.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MomentsTopicModel,XPMomentsRecommendHeaderView ;
@protocol XPMomentsRecommendHeaderViewDelegate <NSObject>
///选中了某个item
- (void)XPMomentsRecommendHeaderView:(XPMomentsRecommendHeaderView *)view didSelectItem:(MomentsTopicModel *)info;
///查看更多
- (void)XPMomentsRecommendHeaderView:(XPMomentsRecommendHeaderView *)view didClickMoreTopic:(UIButton *)sender;
@end
@interface XPMomentsRecommendHeaderView : UIView
@property (nonatomic,strong) NSArray<MomentsTopicModel *> *topicList;
///代理
@property (nonatomic,weak) id<XPMomentsRecommendHeaderViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,16 +5,16 @@
// Created by on 2022/5/18.
//
#import "XPMonentsRecommendHeaderView.h"
#import "XPMomentsRecommendHeaderView.h"
///Third
#import <Masonry/Masonry.h>
///Model
#import "MonentsTopicModel.h"
#import "MomentsTopicModel.h"
///View
#import "XPMonentsTopicCollectionViewCell.h"
@interface XPMonentsRecommendHeaderView ()<UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout>
@interface XPMomentsRecommendHeaderView ()<UICollectionViewDelegate, UICollectionViewDataSource, UICollectionViewDelegateFlowLayout>
///
@property (nonatomic,strong) UIImageView *bgView;
@@ -32,7 +32,7 @@
@end
@implementation XPMonentsRecommendHeaderView
@implementation XPMomentsRecommendHeaderView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
@@ -113,23 +113,23 @@
- (void)collectionView:(UICollectionView *)collectionView didSelectItemAtIndexPath:(NSIndexPath *)indexPath {
[collectionView deselectItemAtIndexPath:indexPath animated:YES];
if (self.topicList.count > 0) {
MonentsTopicModel * topicInfo = [self.topicList xpSafeObjectAtIndex:indexPath.row];
MomentsTopicModel * topicInfo = [self.topicList xpSafeObjectAtIndex:indexPath.row];
if(topicInfo == nil)return;
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsRecommendHeaderView:didSelectItem:)]) {
[self.delegate xPMonentsRecommendHeaderView:self didSelectItem:topicInfo];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsRecommendHeaderView:didSelectItem:)]) {
[self.delegate XPMomentsRecommendHeaderView:self didSelectItem:topicInfo];
}
}
}
#pragma mark - Event Response
- (void)arrowButtonAction:(UIButton *)sender {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsRecommendHeaderView:didClickMoreTopic:)]) {
[self.delegate xPMonentsRecommendHeaderView:self didClickMoreTopic:sender];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsRecommendHeaderView:didClickMoreTopic:)]) {
[self.delegate XPMomentsRecommendHeaderView:self didClickMoreTopic:sender];
}
}
#pragma mark - Getters And Setters
- (void)setTopicList:(NSArray<MonentsTopicModel *> *)topicList {
- (void)setTopicList:(NSArray<MomentsTopicModel *> *)topicList {
_topicList = topicList;
[self.collectionView reloadData];
}

View File

@@ -0,0 +1,32 @@
//
// XPMonentsTooBarView.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/12.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MomentsInfoModel, XPMomentsTooBarView;
@protocol XPMomentsTooBarViewDelegate <NSObject>
///点赞
- (void)XPMomentsTooBarView:(XPMomentsTooBarView *)view didClickLike:(MomentsInfoModel *)momentsInfo;
///评论
- (void)XPMomentsTooBarView:(XPMomentsTooBarView *)view didClickCommon:(MomentsInfoModel *)momentsInfo;
///删除
- (void)XPMomentsTooBarView:(XPMomentsTooBarView *)view didClickDelete:(MomentsInfoModel *)momentsInfo;
///屏蔽
- (void)XPMomentsTooBarView:(XPMomentsTooBarView *)view didClickShielding:(MomentsInfoModel *)momentsInfo;
@end
@interface XPMomentsTooBarView : UIView
@property (nonatomic,strong) MomentsInfoModel *momentsInfo;
///代理
@property (nonatomic,weak) id<XPMomentsTooBarViewDelegate> delegate;
///从进入主态时初始化
- (instancetype)initDynamicWithFrame:(CGRect)frame;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,7 +5,7 @@
// Created by on 2022/5/12.
//
#import "XPMonentsTooBarView.h"
#import "XPMomentsTooBarView.h"
///Third
#import <Masonry/Masonry.h>
#import <NIMSDK/NIMSDK.h>
@@ -13,14 +13,14 @@
#import "TTPopup.h"
#import "XPShareView.h"
#import "AccountInfoStorage.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
///Model
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
///View
#import "XPWebViewController.h"
#import "XCCurrentVCStackManager.h"
@interface XPMonentsTooBarView ()<XCShareViewDelegate>
@interface XPMomentsTooBarView ()<XCShareViewDelegate>
///
@property (nonatomic,strong) UIView * likeView;
///
@@ -43,7 +43,7 @@
@property (nonatomic,assign) BOOL isMyMonents;
@end
@implementation XPMonentsTooBarView
@implementation XPMomentsTooBarView
- (instancetype)initDynamicWithFrame:(CGRect)frame{
self = [super initWithFrame:frame];
@@ -184,32 +184,32 @@
NSMutableArray *array = [NSMutableArray array];
TTActionSheetConfig *action1;
if (self.monentsInfo.uid.integerValue == [AccountInfoStorage instance].getUid.integerValue) {
if (self.momentsInfo.uid.integerValue == [AccountInfoStorage instance].getUid.integerValue) {
action1 = [TTActionSheetConfig normalTitle:YMLocalizedString(@"XPMonentsTooBarView0") clickAction:^{
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTooBarView:didClickDelete:)]) {
[self.delegate xPMonentsTooBarView:self didClickDelete:self.monentsInfo];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTooBarView:didClickDelete:)]) {
[self.delegate XPMomentsTooBarView:self didClickDelete:self.momentsInfo];
}
}];
[TTPopup actionSheetWithItems:@[action1]];
} else {
TTActionSheetConfig *action = [TTActionSheetConfig normalTitle:YMLocalizedString(@"XPMonentsTooBarView8") clickAction:^{
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTooBarView:didClickShielding:)]) {
[self.delegate xPMonentsTooBarView:self didClickShielding:self.monentsInfo];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTooBarView:didClickShielding:)]) {
[self.delegate XPMomentsTooBarView:self didClickShielding:self.momentsInfo];
}
}];
TTActionSheetConfig *black = [TTActionSheetConfig normalTitle:YMLocalizedString(@"XPMineUserInfoViewController1") clickAction:^{
[self addOrRemoveBlack:NO uid:self.monentsInfo.uid];
[self addOrRemoveBlack:NO uid:self.momentsInfo.uid];
}];
[array addObjectsFromArray:@[action, black]];
BOOL isInBlackList = [[NIMSDK sharedSDK]. userManager isUserInBlackList:self.monentsInfo.uid] || [self isSystemAccount];
BOOL isInBlackList = [[NIMSDK sharedSDK]. userManager isUserInBlackList:self.momentsInfo.uid] || [self isSystemAccount];
if (isInBlackList) {
[array removeObject:black];
}
action1 = [TTActionSheetConfig normalTitle:YMLocalizedString(@"XPMonentsTooBarView1") clickAction:^{
NSString * url= [NSString stringWithFormat:@"%@?reportUid=%@&source=%@", URLWithType(kReportRoomURL),self.monentsInfo.uid, @"WORLDDYNAMIC"];
NSString * url= [NSString stringWithFormat:@"%@?reportUid=%@&source=%@", URLWithType(kReportRoomURL),self.momentsInfo.uid, @"WORLDDYNAMIC"];
XPWebViewController * webVC = [[XPWebViewController alloc] init];
webVC.url = url;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:webVC animated:YES];
@@ -220,7 +220,7 @@
}
- (BOOL)isSystemAccount {
return [KeyWithType(KeyType_SecretaryUidKey) isEqualToString:[NSString stringWithFormat:@"%@", self.monentsInfo.uid]] || [KeyWithType(KeyType_SystemNotifiUidKey) isEqualToString:[NSString stringWithFormat:@"%@", self.monentsInfo.uid]] || [KeyWithType(KeyType_GuildUidKey) isEqualToString:[NSString stringWithFormat:@"%@", self.monentsInfo.uid]];
return [KeyWithType(KeyType_SecretaryUidKey) isEqualToString:[NSString stringWithFormat:@"%@", self.momentsInfo.uid]] || [KeyWithType(KeyType_SystemNotifiUidKey) isEqualToString:[NSString stringWithFormat:@"%@", self.momentsInfo.uid]] || [KeyWithType(KeyType_GuildUidKey) isEqualToString:[NSString stringWithFormat:@"%@", self.momentsInfo.uid]];
}
//
@@ -263,17 +263,17 @@
}
- (void)commonButtonAction:(UIButton *)sender {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTooBarView:didClickCommon:)]) {
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTooBarView:didClickCommon:)]) {
self.commentButton.userInteractionEnabled = YES;
[self.delegate xPMonentsTooBarView:self didClickCommon:self.monentsInfo];
[self.delegate XPMomentsTooBarView:self didClickCommon:self.momentsInfo];
} else {
self.commentButton.userInteractionEnabled = NO;
}
}
- (void)likeButtonAction:(UIButton *)sender {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTooBarView:didClickLike:)]) {
[self.delegate xPMonentsTooBarView:self didClickLike:self.monentsInfo];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTooBarView:didClickLike:)]) {
[self.delegate XPMomentsTooBarView:self didClickLike:self.momentsInfo];
}
}
@@ -285,22 +285,22 @@
CGFloat margin = 15;
CGSize itemSize = CGSizeMake((KScreenWidth-2*margin)/4, 65);
XPShareInfoModel * shareInfo = [[XPShareInfoModel alloc] init];
NSString * title= self.monentsInfo.nick;
if (self.monentsInfo.nick.length > 6) {
NSString * title= self.momentsInfo.nick;
if (self.momentsInfo.nick.length > 6) {
title = [title substringToIndex:6];
}
shareInfo.nick = title;
shareInfo.content = self.monentsInfo.content;
shareInfo.imageUrl = self.monentsInfo.avatar;
shareInfo.content = self.momentsInfo.content;
shareInfo.imageUrl = self.momentsInfo.avatar;
shareInfo.shareTitle = [NSString stringWithFormat:YMLocalizedString(@"XPMonentsTooBarView7"), title];
shareInfo.shareContent = self.monentsInfo.content;
shareInfo.shareImageUrl = self.monentsInfo.avatar;
shareInfo.shareContent = self.momentsInfo.content;
shareInfo.shareImageUrl = self.momentsInfo.avatar;
NSString * uid = [AccountInfoStorage instance].getUid;
NSString *urlStr = [NSString stringWithFormat:@"%@/%@?uid=%@&dynamicId=%@&worldId=%ld",[HttpRequestHelper getHostUrl], URLWithType(kMonentsShareURL), uid, self.monentsInfo.dynamicId, self.monentsInfo.worldId];
NSString *urlStr = [NSString stringWithFormat:@"%@/%@?uid=%@&dynamicId=%@&worldId=%ld",[HttpRequestHelper getHostUrl], URLWithType(kMonentsShareURL), uid, self.momentsInfo.dynamicId, self.momentsInfo.worldId];
shareInfo.shareUrl = urlStr;
shareInfo.dynamicId = self.monentsInfo.dynamicId;
shareInfo.uid = self.monentsInfo.uid;
shareInfo.worldId = [NSString stringWithFormat:@"%ld", self.monentsInfo.worldId];
shareInfo.dynamicId = self.momentsInfo.dynamicId;
shareInfo.uid = self.momentsInfo.uid;
shareInfo.worldId = [NSString stringWithFormat:@"%ld", self.momentsInfo.worldId];
XPShareView *shareView = [[XPShareView alloc] initWithItems:items itemSize:itemSize shareInfo:shareInfo];
shareView.delegate = self;
[TTPopup popupView:shareView style:TTPopupStyleActionSheet];
@@ -315,7 +315,7 @@
}
- (void)shareView:(XPShareView *)shareView didSuccess:(XPShareInfoModel *)shareInfo{
[Api userShareMonents:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api userShareMoments:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
} dynamicId:shareInfo.dynamicId uid:shareInfo.uid worldId:shareInfo.worldId shareUid:[AccountInfoStorage instance].getUid];
[TTPopup dismiss];
@@ -326,13 +326,13 @@
}
#pragma mark - Getters And Setters
- (void)setMonentsInfo:(MonentsInfoModel *)monentsInfo {
_monentsInfo = monentsInfo;
if (_monentsInfo) {
self.likeButton.selected = _monentsInfo.isLike;
self.likeLabel.text = _monentsInfo.likeCount.length > 0 ? _monentsInfo.likeCount : @"0";
self.commentLabel.text = _monentsInfo.commentCount.length > 0 ? _monentsInfo.commentCount : @"0";
self.reportButton.hidden = _monentsInfo.dynamicId == nil;
- (void)setMomentsInfo:(MomentsInfoModel *)monentsInfo {
_momentsInfo = monentsInfo;
if (_momentsInfo) {
self.likeButton.selected = _momentsInfo.isLike;
self.likeLabel.text = _momentsInfo.likeCount.length > 0 ? _momentsInfo.likeCount : @"0";
self.commentLabel.text = _momentsInfo.commentCount.length > 0 ? _momentsInfo.commentCount : @"0";
self.reportButton.hidden = _momentsInfo.dynamicId == nil;
}
}

View File

@@ -8,9 +8,9 @@
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel;
@interface XPMoentsTopicView : UIView
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
@class MomentsInfoModel;
@interface XPMomentsTopicView : UIView
@property (nonatomic,strong) MomentsInfoModel *monentsInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,7 +5,7 @@
// Created by on 2022/5/12.
//
#import "XPMoentsTopicView.h"
#import "XPMomentsTopicView.h"
///Third
#import <Masonry/Masonry.h>
///Tool
@@ -13,9 +13,9 @@
#import "UIImage+Utils.h"
#import "NSString+Utils.h"
///Model
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
@interface XPMoentsTopicView ()
@interface XPMomentsTopicView ()
///
@property (nonatomic,strong) UIStackView *stackView;
///
@@ -27,7 +27,7 @@
@end
@implementation XPMoentsTopicView
@implementation XPMomentsTopicView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
@@ -66,7 +66,7 @@
}];
}
#pragma mark - Getters And Setters
- (void)setMonentsInfo:(MonentsInfoModel *)monentsInfo {
- (void)setMonentsInfo:(MomentsInfoModel *)monentsInfo {
_monentsInfo = monentsInfo;
if (_monentsInfo) {
if (_monentsInfo.worldId > 0) {

View File

@@ -0,0 +1,32 @@
//
// XPMonentsUserInfoView.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/12.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MomentsInfoModel, XPMomentsUserInfoView;
@protocol XPMomentsUserInfoViewDelegate <NSObject>
///点击了头像
- (void)XPMomentsUserInfoView:(XPMomentsUserInfoView *)view didClickAvatar:(MomentsInfoModel *)moments;
///点击了跟随进房
- (void)XPMomentsUserInfoView:(XPMomentsUserInfoView *)view didClickEnterRoom:(MomentsInfoModel *)moments;
///删除
- (void)XPMomentsTooBarView:(XPMomentsUserInfoView *)view didClickDelete:(MomentsInfoModel *)momentsInfo;
@end
@interface XPMomentsUserInfoView : UIView
///动态信息
@property (nonatomic,strong) MomentsInfoModel *momentsInfo;
///代理
@property (nonatomic,weak) id<XPMomentsUserInfoViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,7 +5,7 @@
// Created by on 2022/5/12.
//
#import "XPMonentsUserInfoView.h"
#import "XPMomentsUserInfoView.h"
///Third
#import <SVGA.h>
#import <Masonry/Masonry.h>
@@ -19,9 +19,9 @@
#import "AccountInfoStorage.h"
#import "UIButton+EnlargeTouchArea.h"
///Model
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
@interface XPMonentsUserInfoView ()
@interface XPMomentsUserInfoView ()
///
@property (nonatomic,strong) UIStackView *nickStackView;
///
@@ -35,7 +35,7 @@
///
@property (nonatomic,strong) UIImageView *newsUserImageView;
///
@property (nonatomic,strong) UIImageView *officalImageView;
@property (nonatomic,strong) UIImageView *officialImageView;
///
@property (nonatomic,strong) YYAnimatedImageView *headWearImageView;
@property (nonatomic,strong) SVGAImageView *headWearSVGAImageView;
@@ -46,7 +46,7 @@
///
@property (nonatomic,strong) NetImageView *charmImageView;
///
@property (nonatomic,strong) NetImageView *experImageView;
@property (nonatomic,strong) NetImageView *levelImageView;
///
@property (nonatomic,strong) UIView * namePlateView;
///
@@ -65,7 +65,7 @@
@property (nonatomic,strong) UIButton *onlineButton;
@end
@implementation XPMonentsUserInfoView
@implementation XPMomentsUserInfoView
- (instancetype)initWithFrame:(CGRect)frame {
self = [super initWithFrame:frame];
if (self) {
@@ -91,14 +91,13 @@
[self.levelStackView addArrangedSubview:self.nobleImageView];
[self.levelStackView addArrangedSubview:self.newsUserImageView];
[self.levelStackView addArrangedSubview:self.officalImageView];
[self.levelStackView addArrangedSubview:self.experImageView];
[self.levelStackView addArrangedSubview:self.officialImageView];
[self.levelStackView addArrangedSubview:self.levelImageView];
[self.levelStackView addArrangedSubview:self.charmImageView];
[self.levelStackView addArrangedSubview:self.namePlateView];
///
[self.namePlateView addSubview:self.nameplateImageView];
[self.namePlateView addSubview:self.nameplateLabel];
}
- (void)initSubViewConstraints {
@@ -121,7 +120,7 @@
make.height.mas_equalTo(70);
}];
[self.nickLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(self.avatarImageView.mas_trailing).offset(12);
make.bottom.mas_equalTo(self.avatarImageView.mas_centerY).offset(-2);
@@ -147,11 +146,11 @@
make.width.mas_equalTo(20);
}];
[self.officalImageView mas_makeConstraints:^(MASConstraintMaker *make) {
[self.officialImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(20);
}];
[self.experImageView mas_makeConstraints:^(MASConstraintMaker *make) {
[self.levelImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(34);
}];
@@ -201,28 +200,28 @@
#pragma mark - Event Response
- (void)onlineButtonAction:(UIButton *)sender {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsUserInfoView:didClickEnterRoom:)]) {
[self.delegate xPMonentsUserInfoView:self didClickEnterRoom:self.monentsInfo];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsUserInfoView:didClickEnterRoom:)]) {
[self.delegate XPMomentsUserInfoView:self didClickEnterRoom:self.momentsInfo];
}
}
- (void)didTapAvatarGuest {
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsUserInfoView:didClickAvatar:)]) {
[self.delegate xPMonentsUserInfoView:self didClickAvatar:self.monentsInfo];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsUserInfoView:didClickAvatar:)]) {
[self.delegate XPMomentsUserInfoView:self didClickAvatar:self.momentsInfo];
}
}
- (void)reportButtonAction:(UIButton *)sender {
TTActionSheetConfig *action;
if (self.monentsInfo.uid.integerValue == [AccountInfoStorage instance].getUid.integerValue) {
if (self.momentsInfo.uid.integerValue == [AccountInfoStorage instance].getUid.integerValue) {
action = [TTActionSheetConfig normalTitle:YMLocalizedString(@"XPMonentsUserInfoView0") clickAction:^{
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsTooBarView:didClickDelete:)]) {
[self.delegate xPMonentsTooBarView:self didClickDelete:self.monentsInfo];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsTooBarView:didClickDelete:)]) {
[self.delegate XPMomentsTooBarView:self didClickDelete:self.momentsInfo];
}
}];
} else {
action = [TTActionSheetConfig normalTitle:YMLocalizedString(@"XPMonentsUserInfoView1") clickAction:^{
NSString * url= [NSString stringWithFormat:@"%@?reportUid=%@&source=%@", URLWithType(kReportRoomURL),self.monentsInfo.uid, @"WORLDDYNAMIC"];
NSString * url= [NSString stringWithFormat:@"%@?reportUid=%@&source=%@", URLWithType(kReportRoomURL),self.momentsInfo.uid, @"WORLDDYNAMIC"];
XPWebViewController * webVC = [[XPWebViewController alloc] init];
webVC.url = url;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:webVC animated:YES];
@@ -231,59 +230,59 @@
[TTPopup actionSheetWithItems:@[action]];
}
#pragma mark - Getters And Setters
- (void)setMonentsInfo:(MonentsInfoModel *)monentsInfo {
_monentsInfo = monentsInfo;
if (_monentsInfo) {
self.avatarImageView.imageUrl = _monentsInfo.avatar;
NSString * nick = _monentsInfo.nick;
- (void)setMomentsInfo:(MomentsInfoModel *)monentsInfo {
_momentsInfo = monentsInfo;
if (_momentsInfo) {
self.avatarImageView.imageUrl = _momentsInfo.avatar;
NSString * nick = _momentsInfo.nick;
if (nick.length > 8) {
nick = [NSString stringWithFormat:@"%@…", [nick substringToIndex:8]];
}
self.nickLabel.text = nick.length > 0 ? nick : @"";
[self.sexImageView setTitle:[NSString stringWithFormat:@"%d",_monentsInfo.age] forState:UIControlStateNormal];
self.sexImageView.backgroundColor = _monentsInfo.gender == GenderType_Male ? UIColorFromRGB(0x6BB3FF) :UIColorFromRGB(0xFF80CC);
self.sexImageView.titleEdgeInsets = _monentsInfo.gender != GenderType_Male ? UIEdgeInsetsMake(0, 2, 0, 0):UIEdgeInsetsMake(0, -1, 0, 0);
self.sexImageView.selected = _monentsInfo.gender != GenderType_Male;
self.officalImageView.hidden = _monentsInfo.defUser != 2;
self.newsUserImageView.hidden = !_monentsInfo.newUser;
self.nobleImageView.hidden = !_monentsInfo.userVipInfoVO;
if (_monentsInfo.experLevelPic) {
self.experImageView.imageUrl = _monentsInfo.experLevelPic;
[self.sexImageView setTitle:[NSString stringWithFormat:@"%d",_momentsInfo.age] forState:UIControlStateNormal];
self.sexImageView.backgroundColor = _momentsInfo.gender == GenderType_Male ? UIColorFromRGB(0x6BB3FF) :UIColorFromRGB(0xFF80CC);
self.sexImageView.titleEdgeInsets = _momentsInfo.gender != GenderType_Male ? UIEdgeInsetsMake(0, 2, 0, 0):UIEdgeInsetsMake(0, -1, 0, 0);
self.sexImageView.selected = _momentsInfo.gender != GenderType_Male;
self.officialImageView.hidden = _momentsInfo.defUser != 2;
self.newsUserImageView.hidden = !_momentsInfo.newUser;
self.nobleImageView.hidden = !_momentsInfo.userVipInfoVO;
if (_momentsInfo.expertLevelPic) {
self.levelImageView.imageUrl = _momentsInfo.expertLevelPic;
}
self.experImageView.hidden = _monentsInfo.experLevelPic.length <= 0;
self.levelImageView.hidden = _momentsInfo.expertLevelPic.length <= 0;
if (_monentsInfo.charmLevelPic) {
self.charmImageView.imageUrl = _monentsInfo.charmLevelPic;
if (_momentsInfo.charmLevelPic) {
self.charmImageView.imageUrl = _momentsInfo.charmLevelPic;
}
if (_monentsInfo.userVipInfoVO) {
self.nobleImageView.imageUrl = _monentsInfo.userVipInfoVO.vipIcon;
if (_momentsInfo.userVipInfoVO) {
self.nobleImageView.imageUrl = _momentsInfo.userVipInfoVO.vipIcon;
}
self.charmImageView.hidden = _monentsInfo.charmLevelPic.length <= 0;
if(_monentsInfo.isCustomWord == YES){
if (_monentsInfo.nameplateWord.length>0) {
self.nameplateImageView.imageUrl = _monentsInfo.nameplatePic;
self.charmImageView.hidden = _momentsInfo.charmLevelPic.length <= 0;
if(_momentsInfo.isCustomWord == YES){
if (_momentsInfo.nameplateWord.length>0) {
self.nameplateImageView.imageUrl = _momentsInfo.nameplatePic;
self.namePlateView.hidden = NO;
} else {
self.namePlateView.hidden = YES;
}
}else{
if (_monentsInfo.nameplateWord.length>0 && _monentsInfo.nameplatePic.length>0) {
self.nameplateImageView.imageUrl = _monentsInfo.nameplatePic;
self.nameplateLabel.text = _monentsInfo.nameplateWord;
if (_momentsInfo.nameplateWord.length>0 && _momentsInfo.nameplatePic.length>0) {
self.nameplateImageView.imageUrl = _momentsInfo.nameplatePic;
self.nameplateLabel.text = _momentsInfo.nameplateWord;
self.namePlateView.hidden = NO;
} else {
self.namePlateView.hidden = YES;
}
}
NSString * headwearUrl= _monentsInfo.headwearEffect.length > 0 ? _monentsInfo.headwearEffect : _monentsInfo.headwearPic;
NSString * headwearUrl= _momentsInfo.headwearEffect.length > 0 ? _momentsInfo.headwearEffect : _momentsInfo.headwearPic;
self.headWearImageView.hidden = headwearUrl.length <= 0;
self.headWearSVGAImageView.hidden = headwearUrl.length <= 0;
if (headwearUrl.length > 0) {
if (_monentsInfo.headwearType == 1) {
if (_momentsInfo.headwearType == 1) {
[self.headWearSVGAImageView setImageName:headwearUrl];
} else {
NSURL *url = [NSURL URLWithString:headwearUrl];
@@ -298,8 +297,8 @@
self.firstTagImageView.hidden = YES;
self.secondTagImageView.hidden = YES;
self.thirdTagImageView.hidden = YES;
for (int i = 0; i< _monentsInfo.labelList.count; i++) {
NSString * imageUrl = [_monentsInfo.labelList xpSafeObjectAtIndex:i];
for (int i = 0; i< _momentsInfo.labelList.count; i++) {
NSString * imageUrl = [_momentsInfo.labelList xpSafeObjectAtIndex:i];
if (i < self.tagStackView.subviews.count) {
NetImageView * image = [self.tagStackView.subviews xpSafeObjectAtIndex:i];
if(image != nil){
@@ -308,7 +307,7 @@
}
}
}
self.onlineButton.hidden = _monentsInfo.inRoomUid.length <= 0;
self.onlineButton.hidden = _momentsInfo.inRoomUid.length <= 0;
}
}
@@ -377,17 +376,17 @@
}
return _levelStackView;
}
- (NetImageView *)experImageView {
if (!_experImageView) {
- (NetImageView *)levelImageView {
if (!_levelImageView) {
NetImageConfig * config = [[NetImageConfig alloc] init];
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
config.imageType = ImageTypeUserCardLevel;
_experImageView = [[NetImageView alloc] initWithConfig:config];
_experImageView.userInteractionEnabled = YES;
_experImageView.hidden = YES;
_experImageView.contentMode = UIViewContentModeScaleAspectFit;
_levelImageView = [[NetImageView alloc] initWithConfig:config];
_levelImageView.userInteractionEnabled = YES;
_levelImageView.hidden = YES;
_levelImageView.contentMode = UIViewContentModeScaleAspectFit;
}
return _experImageView;
return _levelImageView;
}
- (NetImageView *)charmImageView {
@@ -457,14 +456,14 @@
return _newsUserImageView;
}
- (UIImageView *)officalImageView {
if (!_officalImageView) {
_officalImageView = [[UIImageView alloc] init];
_officalImageView.userInteractionEnabled = YES;
_officalImageView.image = [UIImage imageNamed:@"common_offical"];
_officalImageView.hidden = YES;
- (UIImageView *)officialImageView {
if (!_officialImageView) {
_officialImageView = [[UIImageView alloc] init];
_officialImageView.userInteractionEnabled = YES;
_officialImageView.image = [UIImage imageNamed:@"common_offical"];
_officialImageView.hidden = YES;
}
return _officalImageView;
return _officialImageView;
}
- (UIStackView *)tagStackView {

View File

@@ -1,28 +0,0 @@
//
// XPMonentsContentView.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/13.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel, XPMonentsContentView;
@protocol XPMonentsContentViewDelegate <NSObject>
///点击这折叠
- (void)xPMonentsContentView:(XPMonentsContentView *)view didClickFold:(MonentsInfoModel *)monentsInfo;
@end
@interface XPMonentsContentView : UIView
///
@property (nonatomic,assign) BOOL isTopic;
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
///代理
@property (nonatomic,weak) id<XPMonentsContentViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -1,26 +0,0 @@
//
// YMMonentsPhotoView.h
// YUMI
//
// Created by YUMI on 2022/5/12.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsPicInfoModel, XPMonentsPhotoView;
@protocol XPMonentsPhotoViewDelegate <NSObject>
- (void)xPMonentsPhotoView:(XPMonentsPhotoView *)view didClickImage:(NSInteger)index;
@end
@interface XPMonentsPhotoView : UIView
///发布的内容
@property (nonatomic,copy) NSArray<MonentsPicInfoModel *> *dynamicResList;
@property (nonatomic,copy) NSArray<MonentsPicInfoModel *> *mineDynamicResList;
///代理
@property (nonatomic,weak) id<XPMonentsPhotoViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -8,7 +8,7 @@
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class XPMonentsPublishTopicView, MonentsTopicModel;
@class XPMonentsPublishTopicView, MomentsTopicModel;
@protocol XPMonentsPublishTopicViewDelegate <NSObject>
///选择了关闭按钮
@@ -21,7 +21,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface XPMonentsPublishTopicView : UIView
///代理
@property (nonatomic,weak) id<XPMonentsPublishTopicViewDelegate> delegate;
@property (nonatomic,strong) MonentsTopicModel *topicInfo;
@property (nonatomic,strong) MomentsTopicModel *topicInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -13,7 +13,7 @@
#import "UIView+Corner.h"
#import "UIButton+EnlargeTouchArea.h"
///Model
#import "MonentsTopicModel.h"
#import "MomentsTopicModel.h"
@interface XPMonentsPublishTopicView ()
///
@@ -99,7 +99,7 @@
}
#pragma mark - Getters And Setters
- (void)setTopicInfo:(MonentsTopicModel *)topicInfo {
- (void)setTopicInfo:(MomentsTopicModel *)topicInfo {
_topicInfo = topicInfo;
if (_topicInfo) {
self.addTopicButton.hidden = YES;

View File

@@ -1,28 +0,0 @@
//
// YMMonentsRecommendHeaderView.h
// YUMI
//
// Created by YUMI on 2022/5/18.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsTopicModel,XPMonentsRecommendHeaderView ;
@protocol XPMonentsRecommendHeaderViewDelegate <NSObject>
///选中了某个item
- (void)xPMonentsRecommendHeaderView:(XPMonentsRecommendHeaderView *)view didSelectItem:(MonentsTopicModel *)info;
///查看更多
- (void)xPMonentsRecommendHeaderView:(XPMonentsRecommendHeaderView *)view didClickMoreTopic:(UIButton *)sender;
@end
@interface XPMonentsRecommendHeaderView : UIView
@property (nonatomic,strong) NSArray<MonentsTopicModel *> *topicList;
///代理
@property (nonatomic,weak) id<XPMonentsRecommendHeaderViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -1,32 +0,0 @@
//
// XPMonentsTooBarView.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/12.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel, XPMonentsTooBarView;
@protocol XPMonentsTooBarViewDelegate <NSObject>
///点赞
- (void)xPMonentsTooBarView:(XPMonentsTooBarView *)view didClickLike:(MonentsInfoModel *)monentsInfo;
///评论
- (void)xPMonentsTooBarView:(XPMonentsTooBarView *)view didClickCommon:(MonentsInfoModel *)monentsInfo;
///删除
- (void)xPMonentsTooBarView:(XPMonentsTooBarView *)view didClickDelete:(MonentsInfoModel *)monentsInfo;
///屏蔽
- (void)xPMonentsTooBarView:(XPMonentsTooBarView *)view didClickShielding:(MonentsInfoModel *)monentsInfo;
@end
@interface XPMonentsTooBarView : UIView
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
///代理
@property (nonatomic,weak) id<XPMonentsTooBarViewDelegate> delegate;
///从进入主态时初始化
- (instancetype)initDynamicWithFrame:(CGRect)frame;
@end
NS_ASSUME_NONNULL_END

View File

@@ -8,10 +8,10 @@
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsTopicModel;
@class MomentsTopicModel;
@interface XPMonentsTopicHeaderView : UIView
///
@property (nonatomic,strong) MonentsTopicModel *topicInfo;
@property (nonatomic,strong) MomentsTopicModel *topicInfo;
@end
NS_ASSUME_NONNULL_END

View File

@@ -13,7 +13,7 @@
#import "YUMIMacroUitls.h"
#import "NetImageView.h"
///Model
#import "MonentsTopicModel.h"
#import "MomentsTopicModel.h"
@interface XPMonentsTopicHeaderView ()
@@ -66,7 +66,7 @@
}
#pragma mark - Getters And Setters
- (void)setTopicInfo:(MonentsTopicModel *)topicInfo {
- (void)setTopicInfo:(MomentsTopicModel *)topicInfo {
_topicInfo = topicInfo;
if (_topicInfo) {
self.logoImageView.imageUrl = _topicInfo.icon;

View File

@@ -1,32 +0,0 @@
//
// XPMonentsUserInfoView.h
// xplan-ios
//
// Created by 冯硕 on 2022/5/12.
//
#import <UIKit/UIKit.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel, XPMonentsUserInfoView;
@protocol XPMonentsUserInfoViewDelegate <NSObject>
///点击了头像
- (void)xPMonentsUserInfoView:(XPMonentsUserInfoView *)view didClickAvatar:(MonentsInfoModel *)monents;
///点击了跟随进房
- (void)xPMonentsUserInfoView:(XPMonentsUserInfoView *)view didClickEnterRoom:(MonentsInfoModel *)monents;
///删除
- (void)xPMonentsTooBarView:(XPMonentsUserInfoView *)view didClickDelete:(MonentsInfoModel *)monentsInfo;
@end
@interface XPMonentsUserInfoView : UIView
///动态信息
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
///代理
@property (nonatomic,weak) id<XPMonentsUserInfoViewDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -9,7 +9,7 @@
NS_ASSUME_NONNULL_BEGIN
@interface XPMonentTopicContainerViewController : BaseViewController
@interface XPMomentTopicContainerViewController : BaseViewController
@property (nonatomic,copy) NSString *worldId;
@end

View File

@@ -5,7 +5,7 @@
// Created by YUMI on 2022/8/18.
//
#import "XPMonentTopicContainerViewController.h"
#import "XPMomentTopicContainerViewController.h"
///Third
#import <Masonry/Masonry.h>
#import <JXCategoryView/JXCategoryView.h>
@@ -14,17 +14,17 @@
///Tool
#import "DJDKMIMOMColor.h"
#import "YUMIMacroUitls.h"
#import "Api+Monents.h"
#import "Api+Moments.h"
#import "AccountInfoStorage.h"
///Model
#import "MonentsTopicModel.h"
#import "MomentsTopicModel.h"
///View
#import "XPMonentsTopicRecommondViewController.h"
#import "XPMonentsTopicLatestViewController.h"
#import "XPMonentsTopicHeaderView.h"
#import "XPMonentsPublishViewController.h"
@interface XPMonentTopicContainerViewController ()<JXPagerViewDelegate,JXCategoryViewDelegate>
@interface XPMomentTopicContainerViewController ()<JXPagerViewDelegate,JXCategoryViewDelegate>
@property (nonatomic,strong) JXCategoryTitleView *pi_categoryView;
@property (nonatomic,strong) JXCategoryIndicatorLineView *lineView;
@property (nonatomic,strong) JXPagerListRefreshView *pagerContentView;
@@ -34,10 +34,10 @@
@property (nonatomic,strong) XPMonentsTopicHeaderView *headerView;
@property (nonatomic,strong) UIButton *backButton;
@property (nonatomic,strong) UIButton *enterTopicButton;
@property (nonatomic,strong) MonentsTopicModel *topicInfo;
@property (nonatomic,strong) MomentsTopicModel *topicInfo;
@end
@implementation XPMonentTopicContainerViewController
@implementation XPMomentTopicContainerViewController
- (BOOL)isHiddenNavBar {
return YES;
@@ -73,9 +73,9 @@
- (void)requestTopicDetail {
NSString * uid = [AccountInfoStorage instance].getUid;
[Api monentsTopicDetailInfo:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
[Api momentsTopicDetailInfo:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
if (code == 200) {
MonentsTopicModel * info = [MonentsTopicModel modelWithDictionary:data.data];
MomentsTopicModel * info = [MomentsTopicModel modelWithDictionary:data.data];
self.topicInfo = info;
self.headerView.topicInfo = info;
} else if(code == 7903) {

View File

@@ -6,10 +6,10 @@
//
#import "MvpViewController.h"
#import "XPMonentsDetailViewControllerDelegate.h"
#import "XPMomentsDetailViewControllerDelegate.h"
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel, XPMonentsDetailViewController;
@class MomentsInfoModel, XPMomentsDetailViewController;
//@protocol XPMonentsDetailViewControllerDelegate <NSObject>
//
/////删除了动态
@@ -17,10 +17,10 @@ NS_ASSUME_NONNULL_BEGIN
//
//@end
@interface XPMonentsDetailViewController : MvpViewController
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
@interface XPMomentsDetailViewController : MvpViewController
@property (nonatomic,strong) MomentsInfoModel *momentsInfo;
///代理
@property (nonatomic,weak) id<XPMonentsDetailViewControllerDelegate> delegate;
@property (nonatomic,weak) id<XPMomentsDetailViewControllerDelegate> delegate;
@end
NS_ASSUME_NONNULL_END

View File

@@ -5,23 +5,23 @@
// Created by on 2022/6/22.
//
#import "XPMonentsDetailViewController.h"
#import "XPMomentsDetailViewController.h"
///Third
#import <Masonry/Masonry.h>
#import <MJRefresh/MJRefresh.h>
///Tool
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "QEmotionHelper.h"
#import "QKeyboardManager.h"
#import "TTPopup.h"
///Model
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
#import "MonentsCommentModel.h"
#import "MonentsCommentReplyModel.h"
///View
#import "XPMonentsTableViewCell.h"
#import "XPMomentsTableViewCell.h"
#import "XPMonentsCommentTableViewCell.h"
#import "XPMonentsEmptyTableViewCell.h"
#import "XPMomentsEmptyTableViewCell.h"
#import "QInputBarView.h"
#import "QKeyboardManager.h"
#import "QEmotionBoardView.h"
@@ -30,7 +30,7 @@
#import "XPMonentDetailPresenter.h"
#import "XPMonentsDetailProtocol.h"
@interface XPMonentsDetailViewController ()<UITableViewDelegate, UITableViewDataSource, XPMonentsDetailProtocol, XPMonentsCommentTableViewCellDelegate, XPMonentsTableViewCellDelegate, QInputBarViewDelegate, QInputBarViewDataSource,InputBoardDataSource ,InputBoardDelegate , QEmotionBoardViewDelegate>
@interface XPMomentsDetailViewController ()<UITableViewDelegate, UITableViewDataSource, XPMonentsDetailProtocol, XPMonentsCommentTableViewCellDelegate, XPMomentsTableViewCellDelegate, QInputBarViewDelegate, QInputBarViewDataSource,InputBoardDataSource ,InputBoardDelegate , QEmotionBoardViewDelegate>
///
@property (nonatomic,strong) UITableView *tableView;
///
@@ -45,7 +45,7 @@
@property (nonatomic,strong) NSString *commentId;
@end
@implementation XPMonentsDetailViewController
@implementation XPMomentsDetailViewController
-(void)dealloc{
[[NSNotificationCenter defaultCenter]removeObserver:self];
}
@@ -70,16 +70,16 @@
{
BOOL status = [refreshData[@"status"] boolValue];
NSInteger count = self.monentsInfo.likeCount.integerValue;
NSInteger count = self.momentsInfo.likeCount.integerValue;
NSString *dynamicId = refreshData[@"dynamicId"];
if([self.monentsInfo.dynamicId isEqualToString:dynamicId]){
self.monentsInfo.isLike = status;
if([self.momentsInfo.dynamicId isEqualToString:dynamicId]){
self.momentsInfo.isLike = status;
if (status) {
count += 1;
} else {
count -= 1;
}
self.monentsInfo.likeCount = [NSString stringWithFormat:@"%ld", count];
self.momentsInfo.likeCount = [NSString stringWithFormat:@"%ld", count];
[self.tableView reloadData];
}
break;
@@ -98,8 +98,8 @@
default:
{
NSString *dynamicId = refreshData[@"dynamicId"];
if([self.monentsInfo.dynamicId isEqualToString:dynamicId]){
self.monentsInfo.commentCount = [NSString stringWithFormat:@"%ld",self.monentsInfo.commentCount.integerValue + 1];
if([self.momentsInfo.dynamicId isEqualToString:dynamicId]){
self.momentsInfo.commentCount = [NSString stringWithFormat:@"%ld",self.momentsInfo.commentCount.integerValue + 1];
[self.tableView reloadData];
@@ -127,8 +127,8 @@
}
- (void)headerRefresh {
[self.presenter getMonentsDetail:self.monentsInfo.dynamicId];
[self.presenter getMonentsCommentList:self.monentsInfo.dynamicId timestamp:@"" status:0];
[self.presenter getMonentsDetail:self.momentsInfo.dynamicId];
[self.presenter getMonentsCommentList:self.momentsInfo.dynamicId timestamp:@"" status:0];
}
- (void)footerRefresh {
@@ -137,7 +137,7 @@
MonentsCommentModel * commentInfo = [self.datasource lastObject];
timestamp = commentInfo.publishTime;
}
[self.presenter getMonentsCommentList:self.monentsInfo.dynamicId timestamp:timestamp status:1];
[self.presenter getMonentsCommentList:self.momentsInfo.dynamicId timestamp:timestamp status:1];
}
@@ -167,9 +167,9 @@
if (inputText.length > 0) {
[_keyboardManager hideAllBoardView];
if (self.commentId && self.commentId.length > 0) {
[self.presenter replayCommon:self.commentId dynamicId:self.monentsInfo.dynamicId content:inputText];
[self.presenter replayCommon:self.commentId dynamicId:self.momentsInfo.dynamicId content:inputText];
} else {
[self.presenter commontMonents:self.monentsInfo.dynamicId content:inputText];
[self.presenter commontMonents:self.momentsInfo.dynamicId content:inputText];
}
self.inputBarView.inputTextView.text = nil;
} else {
@@ -210,17 +210,17 @@
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 0) {
[XPMonentsLayoutConfig layoutMonentsModel:self.monentsInfo];
[XPMomentsLayoutConfig layoutMomentsModel:self.momentsInfo];
if(self.monentsInfo.squareTop && self.monentsInfo.content.length == 0){
return self.monentsInfo.rowHeight + 20 ;
if(self.momentsInfo.squareTop && self.momentsInfo.content.length == 0){
return self.momentsInfo.rowHeight + 20 ;
}else{
return self.monentsInfo.rowHeight;
return self.momentsInfo.rowHeight;
}
} else if(indexPath.section == 1) {
if (self.datasource.count > 0) {
MonentsCommentModel * commentInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
return [XPMonentsLayoutConfig commentCommentRowHeight:commentInfo];
return [XPMomentsLayoutConfig commentCommentRowHeight:commentInfo];
} else {
return 400;
}
@@ -236,7 +236,7 @@
}
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
self.commentLabel.text = [NSString stringWithFormat:YMLocalizedString(@"XPMonentsDetailViewController2"), self.monentsInfo.commentCount];
self.commentLabel.text = [NSString stringWithFormat:YMLocalizedString(@"XPMonentsDetailViewController2"), self.momentsInfo.commentCount];
return self.sectionView;
}
@@ -250,9 +250,9 @@
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section ==0) {
XPMonentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsTableViewCell class])];
XPMomentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsTableViewCell class])];
cell.delegate = self;
cell.monentsInfo = self.monentsInfo;
cell.momentsInfo = self.momentsInfo;
return cell;
} else {
if (self.datasource.count > 0) {
@@ -261,7 +261,7 @@
cell.delegate = self;
return cell;
} else {
XPMonentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
XPMomentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
return cell;
}
}
@@ -284,12 +284,12 @@
}
#pragma mark - XPMonentsCommentTableViewCellDelegate
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicShielding:(MonentsInfoModel *)monentsInfo{
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicShielding:(MomentsInfoModel *)monentsInfo{
[self showLoading];
[self.presenter requesstShieldingWtihType:@"0" objId:monentsInfo.dynamicId];
}
- (void)xPMonentsCommentTableViewCell:(XPMonentsCommentTableViewCell *)view didClickMoreReply:(MonentsCommentModel *)commentInfo {
[self.presenter getMonentsCommentReplyList:self.monentsInfo.dynamicId commentId:commentInfo.commentId timestamp:commentInfo.replyInfo.nextTimestamp];
[self.presenter getMonentsCommentReplyList:self.momentsInfo.dynamicId commentId:commentInfo.commentId timestamp:commentInfo.replyInfo.nextTimestamp];
}
- (void)xPMonentsCommentTableViewCell:(XPMonentsCommentTableViewCell *)view didClickCommon:(MonentsReplyModel *)commentInfo {
@@ -304,12 +304,12 @@
userInfoVC.uid = commentInfo.integerValue;
[self.navigationController pushViewController:userInfoVC animated:YES];
}
#pragma mark - XPMonentsTableViewCellDelegate
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClickLike:(MonentsInfoModel *)monentsInfo {
#pragma mark - XPMomentsTableViewCellDelegate
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClickLike:(MomentsInfoModel *)monentsInfo {
[self.presenter likeMonent:monentsInfo.dynamicId status:!monentsInfo.isLike likedUid:monentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicDelete:(MonentsInfoModel *)monentsInfo {
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicDelete:(MomentsInfoModel *)monentsInfo {
[TTPopup alertWithMessage:YMLocalizedString(@"XPMonentsDetailViewController5") confirmHandler:^{
[self.presenter deleteMonents:monentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
} cancelHandler:^{
@@ -317,7 +317,7 @@
}];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicCommon:(MonentsInfoModel *)monentsInfo {
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicCommon:(MomentsInfoModel *)monentsInfo {
if (monentsInfo) {
self.commentId = nil;
self.inputBarView.inputTextView.placeholder = YMLocalizedString(@"XPMonentsDetailViewController6");
@@ -325,8 +325,8 @@
}
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicFold:(MonentsInfoModel *)monentsInfo {
self.monentsInfo = monentsInfo;
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicFold:(MomentsInfoModel *)monentsInfo {
self.momentsInfo = monentsInfo;
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationNone];
}
@@ -425,8 +425,8 @@
}
#pragma mark - XPMonentsDetailProtocol
- (void)getMonentsDetailSuccess:(MonentsInfoModel *)commentInfo {
self.monentsInfo = commentInfo;
- (void)getMonentsDetailSuccess:(MomentsInfoModel *)commentInfo {
self.momentsInfo = commentInfo;
[self.tableView reloadData];
}
@@ -467,7 +467,7 @@
}
- (void)likeMonentsSuccess:(NSString *)dynamicId status:(BOOL)status {
if ([self.monentsInfo.dynamicId isEqualToString:dynamicId]) {
if ([self.momentsInfo.dynamicId isEqualToString:dynamicId]) {
///type,0=1=2=3=
@@ -476,19 +476,19 @@
}
- (void)replyMonentsSuccess {
[self.presenter getMonentsCommentList:self.monentsInfo.dynamicId timestamp:@"" status:0];
[self.presenter getMonentsCommentList:self.momentsInfo.dynamicId timestamp:@"" status:0];
///type,0=1=2=3=
[[NSNotificationCenter defaultCenter]postNotificationName:@"kRefreshDynamicData" object:@{@"dynamicId":self.monentsInfo.dynamicId,@"type":@"3"}];
[[NSNotificationCenter defaultCenter]postNotificationName:@"kRefreshDynamicData" object:@{@"dynamicId":self.momentsInfo.dynamicId,@"type":@"3"}];
}
- (void)commonMonentsSuccess {
[self.presenter getMonentsCommentList:self.monentsInfo.dynamicId timestamp:@"" status:0];
[self.presenter getMonentsCommentList:self.momentsInfo.dynamicId timestamp:@"" status:0];
///type,0=1=2=3=
[[NSNotificationCenter defaultCenter]postNotificationName:@"kRefreshDynamicData" object:@{@"dynamicId":self.monentsInfo.dynamicId,@"type":@"3"}];
[[NSNotificationCenter defaultCenter]postNotificationName:@"kRefreshDynamicData" object:@{@"dynamicId":self.momentsInfo.dynamicId,@"type":@"3"}];
}
-(void)requesstShieldingSuccess:(NSString *)monentsInfo{
[self hideHUD];
[self showSuccessToast:YMLocalizedString(@"XPMonentsMineViewController2")];
[self showSuccessToast:YMLocalizedString(@"XPMomentsMineViewController2")];
///type,0=1=2=3=
[[NSNotificationCenter defaultCenter]postNotificationName:@"kRefreshDynamicData" object:@{@"dynamicId":monentsInfo,@"type":@"2"}];
[self.navigationController popViewControllerAnimated:YES];
@@ -516,9 +516,9 @@
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
[_tableView registerClass:[XPMonentsTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsTableViewCell class])];
[_tableView registerClass:[XPMomentsTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsTableViewCell class])];
[_tableView registerClass:[XPMonentsCommentTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsCommentTableViewCell class])];
[_tableView registerClass:[XPMonentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
[_tableView registerClass:[XPMomentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
}
return _tableView;
}

View File

@@ -8,9 +8,9 @@
#import "MvpViewController.h"
#import <JXPagingView/JXPagerView.h>
NS_ASSUME_NONNULL_BEGIN
@class MonentsInfoModel;
@interface XPMonentsMineViewController : MvpViewController<JXPagerViewListViewDelegate>
@property (nonatomic,strong) NSArray<MonentsInfoModel *>*dynamicInfo;
@class MomentsInfoModel;
@interface XPMomentsMineViewController : MvpViewController<JXPagerViewListViewDelegate>
@property (nonatomic,strong) NSArray<MomentsInfoModel *>*dynamicInfo;
@property (nonatomic, copy) void(^scrollCallback)(UIScrollView *scrollView);
@end

View File

@@ -5,43 +5,43 @@
// Created by YUMI on 2022/8/18.
//
#import "XPMonentsMineViewController.h"
#import "XPMomentsMineViewController.h"
///Third
#import <Masonry/Masonry.h>
#import <MJRefresh/MJRefresh.h>
///Tool
#import "DJDKMIMOMColor.h"
#import "YUMIMacroUitls.h"
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "TTPopup.h"
#import "NSArray+Safe.h"
#import "ClientConfig.h"
///Model
#import "MonentsListInfoModel.h"
#import "MomentsListInfoModel.h"
///P
#import "XPMonentMinePresenter.h"
#import "XPMonentsMineProtocol.h"
#import "XPMomentMinePresenter.h"
#import "XPMomentsMineProtocol.h"
///View
#import "XPMonentsTableViewCell.h"
#import "XPMonentsEmptyTableViewCell.h"
#import "XPMonentsDetailViewController.h"
#import "XPMomentsTableViewCell.h"
#import "XPMomentsEmptyTableViewCell.h"
#import "XPMomentsDetailViewController.h"
#import "XPMomentsSimpleDetailViewController.h"
@interface XPMonentsMineViewController ()<UITableViewDelegate, UITableViewDataSource, XPMonentsTableViewCellDelegate, XPMonentsMineProtocol, XPMonentsDetailViewControllerDelegate>
@interface XPMomentsMineViewController ()<UITableViewDelegate, UITableViewDataSource, XPMomentsTableViewCellDelegate, XPMomentsMineProtocol, XPMomentsDetailViewControllerDelegate>
///
@property (nonatomic,strong) UITableView *tableView;
///
@property (nonatomic,strong) NSMutableArray<MonentsInfoModel *> *datasource;
@property (nonatomic,strong) NSMutableArray<MomentsInfoModel *> *datasource;
///
@property (nonatomic,assign) BOOL hasNoMoreData;
///
@property (nonatomic,strong) MonentsListInfoModel *listInfo;
@property (nonatomic,strong) MomentsListInfoModel *listInfo;
@end
@implementation XPMonentsMineViewController
@implementation XPMomentsMineViewController
- (__kindof id)createPresenter {
return [[XPMonentMinePresenter alloc] init];
return [[XPMomentMinePresenter alloc] init];
}
- (BOOL)isHiddenNavBar {
@@ -72,83 +72,87 @@
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.datasource.count > 0) {
MonentsInfoModel * monentInfo= [self.datasource xpSafeObjectAtIndex:indexPath.row];
[XPMonentsLayoutConfig layoutMonentsModel:monentInfo];
return monentInfo.rowHeight;
MomentsInfoModel * momentInfo= [self.datasource xpSafeObjectAtIndex:indexPath.row];
[XPMomentsLayoutConfig layoutMomentsModel:momentInfo];
return momentInfo.rowHeight;
}
return KScreenHeight - kNavigationHeight - 49 - kSafeAreaBottomHeight;
}
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.datasource.count > 0) {
XPMonentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsTableViewCell class])];
MonentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
XPMomentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsTableViewCell class])];
MomentsInfoModel * momentInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
cell.delegate = self;
cell.monentsInfo = monentsInfo;
cell.momentsInfo = momentInfo;
return cell;
}
XPMonentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
XPMomentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:YES];
if (self.datasource.count > 0) {
MonentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
if(monentsInfo.dynamicId == nil) {
MomentsInfoModel * momentInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
if(momentInfo.dynamicId == nil) {
return;
}
XPMonentsDetailViewController * detailVC = [[XPMonentsDetailViewController alloc] init];
detailVC.monentsInfo = monentsInfo;
XPMomentsDetailViewController * detailVC = [[XPMomentsDetailViewController alloc] init];
detailVC.momentsInfo = momentInfo;
detailVC.delegate = self;
[self.navigationController pushViewController:detailVC animated:YES];
}
}
#pragma mark - XPMonentsTableViewCellDelegate
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClickLike:(MonentsInfoModel *)monentsInfo {
if(monentsInfo.dynamicId == nil){
#pragma mark - XPMomentsTableViewCellDelegate
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClickLike:(MomentsInfoModel *)momentInfo {
if(momentInfo.dynamicId == nil){
[self showErrorToast:YMLocalizedString(@"XPMineUserDataViewController4")];
return;
}
[self.presenter likeMonent:monentsInfo.dynamicId status:!monentsInfo.isLike likedUid:monentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
[self.presenter likeMoment:momentInfo.dynamicId
status:!momentInfo.isLike
likedUid:momentInfo.uid
worldId:[NSString stringWithFormat:@"%ld", momentInfo.worldId]];
}
///
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicCommon:(MonentsInfoModel *)monentsInfo{
if(monentsInfo.dynamicId == nil){
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicCommon:(MomentsInfoModel *)momentInfo{
if(momentInfo.dynamicId == nil){
[self showErrorToast:YMLocalizedString(@"XPMineUserDataViewController5")];
return;
}
XPMonentsDetailViewController * detailVC = [[XPMonentsDetailViewController alloc] init];
detailVC.monentsInfo = monentsInfo;
XPMomentsDetailViewController * detailVC = [[XPMomentsDetailViewController alloc] init];
detailVC.momentsInfo = momentInfo;
detailVC.delegate = self;
[self.navigationController pushViewController:detailVC animated:YES];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicDelete:(MonentsInfoModel *)monentsInfo {
[TTPopup alertWithMessage:YMLocalizedString(@"XPMonentsMineViewController2") confirmHandler:^{
[self.presenter deleteMonents:monentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicDelete:(MomentsInfoModel *)momentInfo {
[TTPopup alertWithMessage:YMLocalizedString(@"XPMomentsMineViewController2") confirmHandler:^{
[self.presenter deleteMoments:momentInfo.dynamicId
worldId:[NSString stringWithFormat:@"%ld", momentInfo.worldId]];
} cancelHandler:^{
}];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicFold:(MonentsInfoModel *)monentsInfo {
__block MonentsInfoModel * monentsInfos;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.dynamicId.integerValue) {
monentsInfos = obj;
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicFold:(MomentsInfoModel *)momentsInfo {
__block MomentsInfoModel * momentsInfos;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == momentsInfo.dynamicId.integerValue) {
momentsInfos = obj;
*stop = YES;
}
}];
if (monentsInfos) {
NSInteger row = [self.datasource indexOfObject:monentsInfo];
if (momentsInfos) {
NSInteger row = [self.datasource indexOfObject:momentsInfos];
[self.tableView reloadRowsAtIndexPaths:@[[NSIndexPath indexPathForRow:row inSection:0]] withRowAnimation:UITableViewRowAnimationNone];
}
}
#pragma mark - XPMonentsDetailViewControllerDelegate
- (void)xPMonentsDetailViewController:(XPMonentsDetailViewController *)view deleteMonents:(NSString *)dynamicId {
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
#pragma mark - XPMomentsDetailViewControllerDelegate
- (void)XPMomentsDetailViewController:(XPMomentsDetailViewController *)view deleteMoments:(NSString *)dynamicId {
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == dynamicId.integerValue) {
deleteInfo = obj;
}
@@ -160,9 +164,9 @@
}
}
#pragma mark - XPMonentsMineProtocol
- (void)likeMonentsSuccess:(NSString *)dynamicId status:(BOOL)status {
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
#pragma mark - XPMomentsMineProtocol
- (void)likeMomentsSuccess:(NSString *)dynamicId status:(BOOL)status {
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if ([obj.dynamicId isEqualToString:dynamicId]) {
if (status) {
obj.isLike += 1;
@@ -175,11 +179,11 @@
[self.tableView reloadData];
}
- (void)deleteMonentsSuccess:(NSString *)monentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMonentsMineViewController1")];
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.integerValue) {
- (void)deleteMomentsSuccess:(NSString *)momentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMomentsMineViewController1")];
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == momentsInfo.integerValue) {
deleteInfo = obj;
}
}];
@@ -209,7 +213,7 @@
}
#pragma mark - Getters And Setters
- (void)setDynamicInfo:(NSArray<MonentsInfoModel *> *)dynamicInfo {
- (void)setDynamicInfo:(NSArray<MomentsInfoModel *> *)dynamicInfo {
[self.datasource removeAllObjects];
[self.datasource addObjectsFromArray:dynamicInfo];
[self.tableView reloadData];
@@ -226,14 +230,14 @@
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
[_tableView registerClass:[XPMonentsTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsTableViewCell class])];
[_tableView registerClass:[XPMonentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
[_tableView registerClass:[XPMomentsTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsTableViewCell class])];
[_tableView registerClass:[XPMomentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
}
return _tableView;
}
- (NSMutableArray<MonentsInfoModel *> *)datasource {
- (NSMutableArray<MomentsInfoModel *> *)datasource {
if (!_datasource) {
_datasource = [NSMutableArray array];
}

View File

@@ -9,7 +9,7 @@
#import <JXCategoryView/JXCategoryListContainerView.h>
NS_ASSUME_NONNULL_BEGIN
@interface XPMonentsRecommendViewController : MvpViewController<JXCategoryListContentViewDelegate>
@interface XPMomentsRecommendViewController : MvpViewController<JXCategoryListContentViewDelegate>
@end

View File

@@ -1,48 +1,48 @@
//
// XPMonentsRecommendViewController.m
// XPMomentsRecommendViewController.m
// xplan-ios
//
// Created by on 2022/5/11.
//
#import "XPMonentsRecommendViewController.h"
#import "XPMomentsRecommendViewController.h"
///Third
#import <Masonry/Masonry.h>
#import <MJRefresh/MJRefresh.h>
///Tool
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "TTPopup.h"
///Model
#import "MonentsInfoModel.h"
#import "MonentsTopicModel.h"
#import "MomentsInfoModel.h"
#import "MomentsTopicModel.h"
///P
#import "XPMonentsRecommendPresenter.h"
#import "XPMonentsRecommendProtocol.h"
#import "XPMomentsRecommendPresenter.h"
#import "XPMomentsRecommendProtocol.h"
///View
#import "XPMonentsTableViewCell.h"
#import "XPMonentsEmptyTableViewCell.h"
#import "XPMonentsRecommendHeaderView.h"
#import "XPMonentsDetailViewController.h"
#import "XPMonentTopicContainerViewController.h"
#import "XPMoentsTopicListViewController.h"
#import "XPMomentsTableViewCell.h"
#import "XPMomentsEmptyTableViewCell.h"
#import "XPMomentsRecommendHeaderView.h"
#import "XPMomentsDetailViewController.h"
#import "XPMomentTopicContainerViewController.h"
#import "XPMomentsTopicListViewController.h"
UIKIT_EXTERN NSString *kRequestRicket;
@interface XPMonentsRecommendViewController ()<UIGestureRecognizerDelegate,UITableViewDelegate, UITableViewDataSource,XPMonentsRecommendProtocol, XPMonentsTableViewCellDelegate,XPMonentsRecommendHeaderViewDelegate, XPMonentsDetailViewControllerDelegate>
UIKIT_EXTERN NSString *kRequestTicket;
@interface XPMomentsRecommendViewController ()<UIGestureRecognizerDelegate,UITableViewDelegate, UITableViewDataSource,XPMomentsRecommendProtocol, XPMomentsTableViewCellDelegate, XPMomentsRecommendHeaderViewDelegate, XPMomentsDetailViewControllerDelegate>
///
@property (nonatomic,strong) UITableView *tableView;
///
@property (nonatomic,strong) NSMutableArray<MonentsInfoModel *> *datasource;
@property (nonatomic,strong) NSMutableArray<MomentsInfoModel *> *datasource;
///
@property (nonatomic,assign) NSInteger page;
///
@property (nonatomic,assign) BOOL hasNoMoreData;
///
@property (nonatomic,strong) XPMonentsRecommendHeaderView *headerView;
@property (nonatomic,strong) XPMomentsRecommendHeaderView *headerView;
@end
@implementation XPMonentsRecommendViewController
@implementation XPMomentsRecommendViewController
-(void)dealloc{
[[NSNotificationCenter defaultCenter]removeObserver:self];
}
@@ -51,14 +51,15 @@ UIKIT_EXTERN NSString *kRequestRicket;
}
- (__kindof id)createPresenter {
return [[XPMonentsRecommendPresenter alloc] init];
return [[XPMomentsRecommendPresenter alloc] init];
}
- (void)viewDidLoad {
[super viewDidLoad];
[self initHeaderAndFooterRrfresh];
[self initSubViews];
[self initSubViewConstraints];
[self initHeaderAndFooterRefresh];
}
#pragma mark - Private Method
@@ -71,13 +72,10 @@ UIKIT_EXTERN NSString *kRequestRicket;
[self.tableView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.mas_equalTo(self.view);
}];
}
#pragma mark -
- (void)initHeaderAndFooterRrfresh {
- (void)initHeaderAndFooterRefresh {
MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(headerRefresh)];
header.stateLabel.font = [UIFont systemFontOfSize:10.0];
header.lastUpdatedTimeLabel.font = [UIFont systemFontOfSize:10.0];
@@ -90,18 +88,19 @@ UIKIT_EXTERN NSString *kRequestRicket;
footer.stateLabel.font = [UIFont systemFontOfSize:10.0];
self.tableView.mj_footer = footer;
[self.tableView.mj_header beginRefreshing];
[self headerRefresh];
}
#pragma mark - fangfa
#pragma mark -
- (void)headerRefresh {
if([AccountInfoStorage instance].isRequestRicket == YES){
return;
}
self.page = 1;
[self.presenter getMonentsRecommendList:self.page pageSize:20 state:0];
[self.presenter getMonentsTopicList:self.page pageSize:20];
[self.presenter getMomentsRecommendList:self.page pageSize:20 state:0];
[self.presenter getMomentsTopicList:self.page pageSize:20];
}
- (void)footerRefresh {
@@ -112,7 +111,7 @@ UIKIT_EXTERN NSString *kRequestRicket;
return;
}
self.page++;
[self.presenter getMonentsRecommendList:self.page pageSize:20 state:1];
[self.presenter getMomentsRecommendList:self.page pageSize:20 state:1];
}
#pragma mark - UITableViewDelegate And UITableViewDataSource
@@ -122,13 +121,13 @@ UIKIT_EXTERN NSString *kRequestRicket;
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.datasource.count > 0) {
MonentsInfoModel * monentInfo= [self.datasource xpSafeObjectAtIndex:indexPath.row];
[XPMonentsLayoutConfig layoutMonentsModel:monentInfo];
MomentsInfoModel * momentInfo= [self.datasource xpSafeObjectAtIndex:indexPath.row];
[XPMomentsLayoutConfig layoutMomentsModel:momentInfo];
if(monentInfo.squareTop && monentInfo.content.length == 0){
return monentInfo.rowHeight + 20 ;
if(momentInfo.squareTop && momentInfo.content.length == 0){
return momentInfo.rowHeight + 20 ;
}else{
return monentInfo.rowHeight;
return momentInfo.rowHeight;
}
}
@@ -137,30 +136,31 @@ UIKIT_EXTERN NSString *kRequestRicket;
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (self.datasource.count > 0) {
XPMonentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsTableViewCell class])];
MonentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
cell.monentsInfo = monentsInfo;
XPMomentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsTableViewCell class])];
MomentsInfoModel * momentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
cell.momentsInfo = momentsInfo;
cell.delegate = self;
return cell;
} else {
XPMomentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
return cell;
}
XPMonentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
return cell;
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:YES];
if (self.datasource.count > 0) {
XPMonentsDetailViewController * detailVC = [[XPMonentsDetailViewController alloc] init];
MonentsInfoModel * monentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
detailVC.monentsInfo = monentsInfo;
XPMomentsDetailViewController * detailVC = [[XPMomentsDetailViewController alloc] init];
MomentsInfoModel * momentsInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
detailVC.momentsInfo = momentsInfo;
detailVC.delegate = self;
[self.navigationController pushViewController:detailVC animated:YES];
}
}
#pragma mark - XPMonentsDetailViewControllerDelegate
- (void)xPMonentsDetailViewController:(XPMonentsDetailViewController *)view deleteMonents:(NSString *)dynamicId {
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
#pragma mark - XPMomentsDetailViewControllerDelegate
- (void)XPMomentsDetailViewController:(XPMomentsDetailViewController *)view deleteMoments:(NSString *)dynamicId {
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == dynamicId.integerValue) {
deleteInfo = obj;
}
@@ -172,47 +172,47 @@ UIKIT_EXTERN NSString *kRequestRicket;
}
}
#pragma mark - XPMonentsTableViewCellDelegate
#pragma mark - XPMomentsTableViewCellDelegate
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicShielding:(MonentsInfoModel *)monentsInfo{
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicShielding:(MomentsInfoModel *)momentsInfo{
[self showLoading];
[self.presenter requesstShieldingWtihType:@"0" objId:monentsInfo.dynamicId];
[self.presenter requestShieldingWithType:@"0" objId:momentsInfo.dynamicId];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClickLike:(MonentsInfoModel *)monentsInfo {
[self.presenter likeMonent:monentsInfo.dynamicId status:!monentsInfo.isLike likedUid:monentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClickLike:(MomentsInfoModel *)momentsInfo {
[self.presenter likeMoment:momentsInfo.dynamicId status:!momentsInfo.isLike likedUid:momentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", momentsInfo.worldId]];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicDelete:(MonentsInfoModel *)monentsInfo {
[TTPopup alertWithMessage:YMLocalizedString(@"XPMonentsRecommendViewController1") confirmHandler:^{
[self.presenter deleteMonents:monentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicDelete:(MomentsInfoModel *)momentsInfo {
[TTPopup alertWithMessage:YMLocalizedString(@"XPMomentsRecommendViewController1") confirmHandler:^{
[self.presenter deleteMoments:momentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", momentsInfo.worldId]];
} cancelHandler:^{
}];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicFold:(MonentsInfoModel *)monentsInfo {
__block MonentsInfoModel * monentsInfos;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.dynamicId.integerValue) {
monentsInfos = obj;
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicFold:(MomentsInfoModel *)momentsInfo {
__block MomentsInfoModel * momentsInfos;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == momentsInfo.dynamicId.integerValue) {
momentsInfos = obj;
*stop = YES;
}
}];
if (monentsInfos) {
NSInteger row = [self.datasource indexOfObject:monentsInfo];
if (momentsInfos) {
NSInteger row = [self.datasource indexOfObject:momentsInfo];
[self.tableView reloadRowsAtIndexPaths:@[[NSIndexPath indexPathForRow:row inSection:0]] withRowAnimation:UITableViewRowAnimationNone];
}
}
#pragma mark - XPMonentsRecommendHeaderViewDelegate
- (void)xPMonentsRecommendHeaderView:(XPMonentsRecommendHeaderView *)view didSelectItem:(MonentsTopicModel *)info {
XPMonentTopicContainerViewController * topicVC = [[XPMonentTopicContainerViewController alloc] init];
#pragma mark - XPMomentsRecommendHeaderViewDelegate
- (void)XPMomentsRecommendHeaderView:(XPMomentsRecommendHeaderView *)view didSelectItem:(MomentsTopicModel *)info {
XPMomentTopicContainerViewController * topicVC = [[XPMomentTopicContainerViewController alloc] init];
topicVC.worldId = info.tId;
[self.navigationController pushViewController:topicVC animated:YES];
}
- (void)xPMonentsRecommendHeaderView:(XPMonentsRecommendHeaderView *)view didClickMoreTopic:(UIButton *)sender {
XPMoentsTopicListViewController * topicListVC = [[XPMoentsTopicListViewController alloc] init];
- (void)XPMomentsRecommendHeaderView:(XPMomentsRecommendHeaderView *)view didClickMoreTopic:(UIButton *)sender {
XPMomentsTopicListViewController * topicListVC = [[XPMomentsTopicListViewController alloc] init];
[self.navigationController pushViewController:topicListVC animated:YES];
}
@@ -221,8 +221,8 @@ UIKIT_EXTERN NSString *kRequestRicket;
return self.view;
}
#pragma mark - XPMonentsRecommendProtocol
- (void)getMonentsRecommendListSuccess:(NSArray *)array state:(int)state {
#pragma mark - XPMomentsRecommendProtocol
- (void)getMomentsRecommendListSuccess:(NSArray *)array state:(int)state {
if (state == 0) {
[self.datasource removeAllObjects];
}
@@ -244,7 +244,7 @@ UIKIT_EXTERN NSString *kRequestRicket;
[self.tableView reloadData];
}
- (void)getMonentsRecommendListFail:(NSString *)msg state:(int)state {
- (void)getMomentsRecommendListFail:(NSString *)msg state:(int)state {
[XNDJTDDLoadingTool hideOnlyView:self.tabBarController.view];
if (state == 0) {
[self.tableView.mj_header endRefreshing];
@@ -253,12 +253,12 @@ UIKIT_EXTERN NSString *kRequestRicket;
}
}
- (void)monentsTopicListSuccess:(NSArray *)array {
- (void)momentsTopicListSuccess:(NSArray *)array {
self.headerView.topicList = array;
}
- (void)likeMonentsSuccess:(NSString *)dynamicId status:(BOOL)status {
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
- (void)likeMomentsSuccess:(NSString *)dynamicId status:(BOOL)status {
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if ([obj.dynamicId isEqualToString:dynamicId]) {
if (status) {
obj.isLike += 1;
@@ -270,12 +270,12 @@ UIKIT_EXTERN NSString *kRequestRicket;
}];
[self.tableView reloadData];
}
-(void)requesstShieldingSuccess:(NSString *)monentsInfo{
-(void)requestShieldingSuccess:(NSString *)momentsInfo{
[self hideHUD];
[self showSuccessToast:YMLocalizedString(@"XPMonentsMineViewController2")];
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.integerValue) {
[self showSuccessToast:YMLocalizedString(@"XPMomentsMineViewController2")];
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == momentsInfo.integerValue) {
deleteInfo = obj;
}
}];
@@ -284,11 +284,11 @@ UIKIT_EXTERN NSString *kRequestRicket;
[self.tableView reloadData];
}
}
- (void)deleteMonentsSuccess:(NSString *)monentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMonentsRecommendViewController2")];
__block MonentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MonentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == monentsInfo.integerValue) {
- (void)deleteMomentsSuccess:(NSString *)momentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMomentsRecommendViewController2")];
__block MomentsInfoModel * deleteInfo;
[self.datasource enumerateObjectsUsingBlock:^(MomentsInfoModel * _Nonnull obj, NSUInteger idx, BOOL * _Nonnull stop) {
if (obj.dynamicId.integerValue == momentsInfo.integerValue) {
deleteInfo = obj;
}
}];
@@ -310,23 +310,23 @@ UIKIT_EXTERN NSString *kRequestRicket;
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
[_tableView registerClass:[XPMonentsTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsTableViewCell class])];
[_tableView registerClass:[XPMonentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
[_tableView registerClass:[XPMomentsTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsTableViewCell class])];
[_tableView registerClass:[XPMomentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
}
return _tableView;
}
- (NSMutableArray<MonentsInfoModel *> *)datasource {
- (NSMutableArray<MomentsInfoModel *> *)datasource {
if (!_datasource) {
_datasource = [NSMutableArray array];
}
return _datasource;
}
- (XPMonentsRecommendHeaderView *)headerView {
- (XPMomentsRecommendHeaderView *)headerView {
if (!_headerView) {
_headerView = [[XPMonentsRecommendHeaderView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, 145)];
_headerView = [[XPMomentsRecommendHeaderView alloc] initWithFrame:CGRectMake(0, 0, KScreenWidth, 145)];
_headerView.delegate = self;
}
return _headerView;

View File

@@ -7,7 +7,7 @@
#import <UIKit/UIKit.h>
@class MonentsInfoModel;
@class MomentsInfoModel;
NS_ASSUME_NONNULL_BEGIN
@protocol XPMomentsSimpleDetailNavDelegate <NSObject>
@@ -22,7 +22,7 @@ NS_ASSUME_NONNULL_BEGIN
@interface XPMomentsSimpleDetailNav : UIView
@property (strong, nonatomic) MonentsInfoModel *infoModel;
@property (strong, nonatomic) MomentsInfoModel *infoModel;
@property (nonatomic, weak) id<XPMomentsSimpleDetailNavDelegate> delegate;

View File

@@ -9,7 +9,7 @@
#import "NetImageView.h"
#import "DJDKMIMOMColor.h"
#import <Masonry.h>
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
@interface XPMomentsSimpleDetailNav()
///
@@ -70,7 +70,7 @@
}];
}
- (void)setInfoModel:(MonentsInfoModel *)infoModel {
- (void)setInfoModel:(MomentsInfoModel *)infoModel {
_infoModel = infoModel;
if (_infoModel) {
self.avatarImageView.imageUrl = infoModel.avatar;

View File

@@ -6,17 +6,17 @@
//
#import "MvpViewController.h"
#import "XPMonentsDetailViewControllerDelegate.h"
#import "XPMomentsDetailViewControllerDelegate.h"
@class MonentsInfoModel;
@class MomentsInfoModel;
NS_ASSUME_NONNULL_BEGIN
@interface XPMomentsSimpleDetailViewController : MvpViewController
@property (nonatomic,strong) MonentsInfoModel *monentsInfo;
@property (nonatomic,strong) MomentsInfoModel *momentsInfo;
///代理
@property (nonatomic,weak) id<XPMonentsDetailViewControllerDelegate> delegate;
@property (nonatomic,weak) id<XPMomentsDetailViewControllerDelegate> delegate;
@end

View File

@@ -11,7 +11,7 @@
#import <Masonry/Masonry.h>
#import <MJRefresh/MJRefresh.h>
///Tool
#import "XPMonentsLayoutConfig.h"
#import "XPMomentsLayoutConfig.h"
#import "DJDKMIMOMColor.h"
#import "QEmotionHelper.h"
#import "QKeyboardManager.h"
@@ -22,13 +22,13 @@
#import "ClientConfig.h"
#import "XNDJTDDLoadingTool.h"
///Model
#import "MonentsInfoModel.h"
#import "MomentsInfoModel.h"
#import "MonentsCommentModel.h"
#import "MonentsCommentReplyModel.h"
///View
#import "XPMonentsTableViewCell.h"
#import "XPMomentsTableViewCell.h"
#import "XPMonentsCommentTableViewCell.h"
#import "XPMonentsEmptyTableViewCell.h"
#import "XPMomentsEmptyTableViewCell.h"
#import "QInputBarView.h"
#import "QKeyboardManager.h"
#import "QEmotionBoardView.h"
@@ -40,7 +40,7 @@
#import "XPMonentDetailPresenter.h"
#import "XPMonentsDetailProtocol.h"
@interface XPMomentsSimpleDetailViewController ()<UITableViewDelegate, UITableViewDataSource, XPMonentsDetailProtocol, XPMonentsCommentTableViewCellDelegate, XPMonentsTableViewCellDelegate, QInputBarViewDelegate, QInputBarViewDataSource,InputBoardDataSource ,InputBoardDelegate , QEmotionBoardViewDelegate, XPMomentsSimpleDetailNavDelegate>
@interface XPMomentsSimpleDetailViewController ()<UITableViewDelegate, UITableViewDataSource, XPMonentsDetailProtocol, XPMonentsCommentTableViewCellDelegate, XPMomentsTableViewCellDelegate, QInputBarViewDelegate, QInputBarViewDataSource,InputBoardDataSource ,InputBoardDelegate , QEmotionBoardViewDelegate, XPMomentsSimpleDetailNavDelegate>
///
@property(nonatomic,strong) XPMomentsSimpleDetailNav *detailNav;
@@ -95,8 +95,8 @@
}
- (void)headerRefresh {
[self.presenter getMonentsDetail:self.monentsInfo.dynamicId];
[self.presenter getMonentsCommentList:self.monentsInfo.dynamicId timestamp:@"" status:0];
[self.presenter getMonentsDetail:self.momentsInfo.dynamicId];
[self.presenter getMonentsCommentList:self.momentsInfo.dynamicId timestamp:@"" status:0];
}
- (void)footerRefresh {
@@ -105,7 +105,7 @@
MonentsCommentModel * commentInfo = [self.datasource lastObject];
timestamp = commentInfo.publishTime;
}
[self.presenter getMonentsCommentList:self.monentsInfo.dynamicId timestamp:timestamp status:1];
[self.presenter getMonentsCommentList:self.momentsInfo.dynamicId timestamp:timestamp status:1];
}
@@ -144,9 +144,9 @@
if (inputText.length > 0) {
[_keyboardManager hideAllBoardView];
if (self.commentId && self.commentId.length > 0) {
[self.presenter replayCommon:self.commentId dynamicId:self.monentsInfo.dynamicId content:inputText];
[self.presenter replayCommon:self.commentId dynamicId:self.momentsInfo.dynamicId content:inputText];
} else {
[self.presenter commontMonents:self.monentsInfo.dynamicId content:inputText];
[self.presenter commontMonents:self.momentsInfo.dynamicId content:inputText];
}
self.inputBarView.inputTextView.text = nil;
} else {
@@ -194,12 +194,12 @@
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 0) {
[XPMonentsLayoutConfig layoutSimpleMonentsModel:self.monentsInfo];
return self.monentsInfo.rowHeight+20;
[XPMomentsLayoutConfig layoutSimpleMomentsModel:self.momentsInfo];
return self.momentsInfo.rowHeight+20;
} else if(indexPath.section == 1) {
if (self.datasource.count > 0) {
MonentsCommentModel * commentInfo = [self.datasource xpSafeObjectAtIndex:indexPath.row];
return [XPMonentsLayoutConfig commentCommentRowHeight:commentInfo];
return [XPMomentsLayoutConfig commentCommentRowHeight:commentInfo];
} else {
return 400;
}
@@ -216,7 +216,7 @@
- (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section {
NSString *commentText = YMLocalizedString(@"XPMomentsSimpleDetailViewController2");
NSMutableAttributedString *commentStr = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%@%@",commentText,self.monentsInfo.commentCount]];
NSMutableAttributedString *commentStr = [[NSMutableAttributedString alloc] initWithString:[NSString stringWithFormat:@"%@%@",commentText,self.momentsInfo.commentCount]];
[commentStr addAttribute:NSFontAttributeName value:[UIFont systemFontOfSize:12 weight:UIFontWeightMedium] range:NSMakeRange(commentText.length, commentStr.length-commentText.length)];
[commentStr addAttribute:NSForegroundColorAttributeName value:[DJDKMIMOMColor textThirdColor] range:NSMakeRange(commentText.length, commentStr.length-commentText.length)];
self.commentLabel.attributedText = commentStr;
@@ -233,10 +233,10 @@
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section ==0) {
NSString *identifier = [NSString stringWithFormat:@"%@_Simple",NSStringFromClass([XPMonentsTableViewCell class])];
XPMonentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:identifier];
NSString *identifier = [NSString stringWithFormat:@"%@_Simple",NSStringFromClass([XPMomentsTableViewCell class])];
XPMomentsTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:identifier];
cell.delegate = self;
cell.monentsInfo = self.monentsInfo;
cell.momentsInfo = self.momentsInfo;
return cell;
} else {
if (self.datasource.count > 0) {
@@ -245,7 +245,7 @@
cell.delegate = self;
return cell;
} else {
XPMonentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
XPMomentsEmptyTableViewCell * cell = [tableView dequeueReusableCellWithIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
return cell;
}
}
@@ -269,7 +269,7 @@
//
- (void)likeBtnAction {
[self.presenter likeMonent:self.monentsInfo.dynamicId status:!self.monentsInfo.isLike likedUid:self.monentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", self.monentsInfo.worldId]];
[self.presenter likeMonent:self.momentsInfo.dynamicId status:!self.momentsInfo.isLike likedUid:self.momentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", self.momentsInfo.worldId]];
}
#pragma mark - XPMomentsSimpleDetailNavDelegate
@@ -281,7 +281,7 @@
///
- (void)momentsSimpleDetailNavAvatarAction {
XPMineUserInfoViewController * userInfoVC = [[XPMineUserInfoViewController alloc] init];
userInfoVC.uid = self.monentsInfo.uid.integerValue;
userInfoVC.uid = self.momentsInfo.uid.integerValue;
[self.navigationController pushViewController:userInfoVC animated:YES];
}
@@ -289,17 +289,17 @@
- (void)momentsSimpleDetailNavMoreAction {
TTActionSheetConfig *action;
@kWeakify(self);
if (self.monentsInfo.uid.integerValue == [AccountInfoStorage instance].getUid.integerValue) {
if (self.momentsInfo.uid.integerValue == [AccountInfoStorage instance].getUid.integerValue) {
action = [TTActionSheetConfig normalTitle:YMLocalizedString(@"XPMomentsSimpleDetailViewController4") clickAction:^{
[TTPopup alertWithMessage:YMLocalizedString(@"XPMonentsTopicLatestViewController1") confirmHandler:^{
@kStrongify(self);
[self.presenter deleteMonents:self.monentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", self.monentsInfo.worldId]];
[self.presenter deleteMonents:self.momentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", self.momentsInfo.worldId]];
} cancelHandler:^{}];
}];
} else {
action = [TTActionSheetConfig normalTitle:YMLocalizedString(@"XPMomentsSimpleDetailViewController6") clickAction:^{
@kStrongify(self);
NSString * url= [NSString stringWithFormat:@"%@?reportUid=%@&source=%@", URLWithType(kReportRoomURL),self.monentsInfo.uid, @"WORLDDYNAMIC"];
NSString * url= [NSString stringWithFormat:@"%@?reportUid=%@&source=%@", URLWithType(kReportRoomURL),self.momentsInfo.uid, @"WORLDDYNAMIC"];
XPWebViewController * webVC = [[XPWebViewController alloc] init];
webVC.url = url;
[self.navigationController pushViewController:webVC animated:YES];
@@ -310,7 +310,7 @@
#pragma mark - XPMonentsCommentTableViewCellDelegate
- (void)xPMonentsCommentTableViewCell:(XPMonentsCommentTableViewCell *)view didClickMoreReply:(MonentsCommentModel *)commentInfo {
[self.presenter getMonentsCommentReplyList:self.monentsInfo.dynamicId commentId:commentInfo.commentId timestamp:commentInfo.replyInfo.nextTimestamp];
[self.presenter getMonentsCommentReplyList:self.momentsInfo.dynamicId commentId:commentInfo.commentId timestamp:commentInfo.replyInfo.nextTimestamp];
}
- (void)xPMonentsCommentTableViewCell:(XPMonentsCommentTableViewCell *)view didClickCommon:(MonentsReplyModel *)commentInfo {
@@ -325,12 +325,12 @@
userInfoVC.uid = commentInfo.integerValue;
[self.navigationController pushViewController:userInfoVC animated:YES];
}
#pragma mark - XPMonentsTableViewCellDelegate
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClickLike:(MonentsInfoModel *)monentsInfo {
#pragma mark - XPMomentsTableViewCellDelegate
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClickLike:(MomentsInfoModel *)monentsInfo {
[self.presenter likeMonent:monentsInfo.dynamicId status:!monentsInfo.isLike likedUid:monentsInfo.uid worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicDelete:(MonentsInfoModel *)monentsInfo {
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicDelete:(MomentsInfoModel *)monentsInfo {
[TTPopup alertWithMessage:YMLocalizedString(@"XPMonentsTopicLatestViewController1") confirmHandler:^{
[self.presenter deleteMonents:monentsInfo.dynamicId worldId:[NSString stringWithFormat:@"%ld", monentsInfo.worldId]];
} cancelHandler:^{
@@ -338,7 +338,7 @@
}];
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicCommon:(MonentsInfoModel *)monentsInfo {
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicCommon:(MomentsInfoModel *)monentsInfo {
if (monentsInfo) {
self.commentId = nil;
self.inputBarView.inputTextView.placeholder = YMLocalizedString(@"XPMomentsSimpleDetailViewController10");
@@ -346,8 +346,8 @@
}
}
- (void)xPMonentsTableViewCell:(XPMonentsTableViewCell *)view didClicFold:(MonentsInfoModel *)monentsInfo {
self.monentsInfo = monentsInfo;
- (void)XPMomentsTableViewCell:(XPMomentsTableViewCell *)view didClicFold:(MomentsInfoModel *)monentsInfo {
self.momentsInfo = monentsInfo;
[self.tableView reloadSections:[NSIndexSet indexSetWithIndex:0] withRowAnimation:UITableViewRowAnimationNone];
}
@@ -446,10 +446,10 @@
}
#pragma mark - XPMonentsDetailProtocol
- (void)getMonentsDetailSuccess:(MonentsInfoModel *)commentInfo {
self.monentsInfo = commentInfo;
[self.likeBtn setTitle:self.monentsInfo.likeCount forState:UIControlStateNormal];
self.likeBtn.selected = self.monentsInfo.isLike;
- (void)getMonentsDetailSuccess:(MomentsInfoModel *)commentInfo {
self.momentsInfo = commentInfo;
[self.likeBtn setTitle:self.momentsInfo.likeCount forState:UIControlStateNormal];
self.likeBtn.selected = self.momentsInfo.isLike;
[self.tableView reloadData];
}
@@ -490,33 +490,33 @@
}
- (void)likeMonentsSuccess:(NSString *)dynamicId status:(BOOL)status {
if ([self.monentsInfo.dynamicId isEqualToString:dynamicId]) {
NSInteger count = self.monentsInfo.likeCount.integerValue;
self.monentsInfo.isLike = status;
if ([self.momentsInfo.dynamicId isEqualToString:dynamicId]) {
NSInteger count = self.momentsInfo.likeCount.integerValue;
self.momentsInfo.isLike = status;
if (status) {
count += 1;
} else {
count -= 1;
}
self.monentsInfo.likeCount = [NSString stringWithFormat:@"%ld", count];
[self.likeBtn setTitle:self.monentsInfo.likeCount forState:UIControlStateNormal];
self.likeBtn.selected = self.monentsInfo.isLike;
self.momentsInfo.likeCount = [NSString stringWithFormat:@"%ld", count];
[self.likeBtn setTitle:self.momentsInfo.likeCount forState:UIControlStateNormal];
self.likeBtn.selected = self.momentsInfo.isLike;
}
}
- (void)replyMonentsSuccess {
[self.presenter getMonentsCommentList:self.monentsInfo.dynamicId timestamp:@"" status:0];
[self.presenter getMonentsCommentList:self.momentsInfo.dynamicId timestamp:@"" status:0];
}
- (void)commonMonentsSuccess {
[self.presenter getMonentsCommentList:self.monentsInfo.dynamicId timestamp:@"" status:0];
[self.presenter getMonentsCommentList:self.momentsInfo.dynamicId timestamp:@"" status:0];
}
- (void)deleteMonentsSuccess:(NSString *)monentsInfo {
- (void)deleteMonentsSuccess:(NSString *)momentsInfo {
[self showSuccessToast:YMLocalizedString(@"XPMomentsSimpleDetailViewController12")];
[self.navigationController popViewControllerAnimated:YES];
if (self.delegate && [self.delegate respondsToSelector:@selector(xPMonentsDetailViewController:deleteMonents:)]) {
[self.delegate xPMonentsDetailViewController:self deleteMonents:self.monentsInfo.dynamicId];
if (self.delegate && [self.delegate respondsToSelector:@selector(XPMomentsDetailViewController:deleteMoments:)]) {
[self.delegate XPMomentsDetailViewController:self deleteMoments:self.momentsInfo.dynamicId];
}
}
@@ -527,7 +527,7 @@
if (!_detailNav) {
_detailNav = [[XPMomentsSimpleDetailNav alloc] init];
_detailNav.delegate = self;
_detailNav.infoModel = self.monentsInfo;
_detailNav.infoModel = self.momentsInfo;
}
return _detailNav;
}
@@ -544,10 +544,10 @@
if (@available(iOS 11.0, *)) {
_tableView.contentInsetAdjustmentBehavior = UIScrollViewContentInsetAdjustmentNever;
}
NSString *identifier = [NSString stringWithFormat:@"%@_Simple",NSStringFromClass([XPMonentsTableViewCell class])];
[_tableView registerClass:[XPMonentsTableViewCell class] forCellReuseIdentifier:identifier];
NSString *identifier = [NSString stringWithFormat:@"%@_Simple",NSStringFromClass([XPMomentsTableViewCell class])];
[_tableView registerClass:[XPMomentsTableViewCell class] forCellReuseIdentifier:identifier];
[_tableView registerClass:[XPMonentsCommentTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsCommentTableViewCell class])];
[_tableView registerClass:[XPMonentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMonentsEmptyTableViewCell class])];
[_tableView registerClass:[XPMomentsEmptyTableViewCell class] forCellReuseIdentifier:NSStringFromClass([XPMomentsEmptyTableViewCell class])];
}
return _tableView;
}

View File

@@ -9,7 +9,7 @@
NS_ASSUME_NONNULL_BEGIN
@interface XPMoentsTopicListViewController : MvpViewController
@interface XPMomentsTopicListViewController : MvpViewController
@end

View File

@@ -5,7 +5,7 @@
// Created by YUMI on 2022/8/18.
//
#import "XPMoentsTopicListViewController.h"
#import "XPMomentsTopicListViewController.h"
///Third
#import <Masonry/Masonry.h>
#import <MJRefresh/MJRefresh.h>
@@ -13,34 +13,34 @@
#import "DJDKMIMOMColor.h"
#import "NSArray+Safe.h"
///Model
#import "MonentsTopicModel.h"
#import "MomentsTopicModel.h"
///View
#import "XPMonentTopicContainerViewController.h"
#import "XPMomentTopicContainerViewController.h"
///P
#import "XPMonentsTopicListPresenter.h"
#import "XPMonentsTopicListProtocol.h"
#import "XPMomentsTopicListPresenter.h"
#import "XPMomentsTopicListProtocol.h"
@interface XPMoentsTopicListViewController ()<UITableViewDelegate, UITableViewDataSource, XPMonentsTopicListProtocol>
@interface XPMomentsTopicListViewController ()<UITableViewDelegate, UITableViewDataSource, XPMomentsTopicListProtocol>
@property (nonatomic,strong) UITableView *tableView;
@property (nonatomic,strong) NSMutableArray *datasource;
@property (nonatomic,assign) int page;
@end
@implementation XPMoentsTopicListViewController
@implementation XPMomentsTopicListViewController
- (__kindof id)createPresenter {
return [[XPMonentsTopicListPresenter alloc] init];
return [[XPMomentsTopicListPresenter alloc] init];
}
- (void)viewDidLoad {
[super viewDidLoad];
[self initHeaderAndFooterRrfresh];
[self initHeaderAndFooterRefresh];
[self initSubViews];
[self initSubViewConstraints];
}
- (void)initHeaderAndFooterRrfresh {
- (void)initHeaderAndFooterRefresh {
MJRefreshNormalHeader *header = [MJRefreshNormalHeader headerWithRefreshingTarget:self refreshingAction:@selector(headerRefresh)];
header.stateLabel.font = [UIFont systemFontOfSize:10.0];
header.lastUpdatedTimeLabel.font = [UIFont systemFontOfSize:10.0];
@@ -93,7 +93,7 @@
if (cell == nil) {
cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleDefault reuseIdentifier:NSStringFromClass([UITableViewCell class])];
}
MonentsTopicModel * topicModel = [self.datasource xpSafeObjectAtIndex:indexPath.row];
MomentsTopicModel * topicModel = [self.datasource xpSafeObjectAtIndex:indexPath.row];
cell.textLabel.text = [NSString stringWithFormat:@"#%@", topicModel.name];
cell.textLabel.textColor = [DJDKMIMOMColor mainTextColor];
cell.textLabel.font = [UIFont systemFontOfSize:13];
@@ -103,15 +103,15 @@
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
[tableView deselectRowAtIndexPath:indexPath animated:YES];
if (self.datasource.count > 0) {
MonentsTopicModel * topicModel = [self.datasource xpSafeObjectAtIndex:indexPath.row];
XPMonentTopicContainerViewController * topicVC = [[XPMonentTopicContainerViewController alloc] init];
MomentsTopicModel * topicModel = [self.datasource xpSafeObjectAtIndex:indexPath.row];
XPMomentTopicContainerViewController * topicVC = [[XPMomentTopicContainerViewController alloc] init];
topicVC.worldId = topicModel.tId;
[self.navigationController pushViewController:topicVC animated:YES];
}
}
#pragma mark - XPMonentsTopicListProtocol
- (void)getMonentsTopicListSuccess:(NSArray *)list state:(int)state {
- (void)getMomentsTopicListSuccess:(NSArray *)list state:(int)state {
if (state == 0) {
[self.tableView.mj_header endRefreshing];
[self.datasource removeAllObjects];
@@ -129,7 +129,7 @@
[self.tableView reloadData];
}
- (void)getMoentsTopicFail:(NSString *)message state:(int)state {
- (void)getMomentsTopicFail:(NSString *)message state:(int)state {
if (state == 0) {
[self.tableView.mj_header endRefreshing];
} else {

View File

@@ -16,7 +16,7 @@
#import "AttachMentModel.h"
#import "MonentsUnReadModel.h"
///View
#import "XPMonentsRecommendViewController.h"
#import "XPMomentsRecommendViewController.h"
#import "XPMonentsAttentionViewController.h"
#import "XPMonentsLatestViewController.h"
#import "XPMonentsInteractiveViewController.h"
@@ -43,7 +43,7 @@
///
@property (nonatomic,strong) XPMonentsLatestViewController *latestVC;
///
@property (nonatomic,strong) XPMonentsRecommendViewController * recommendVC;
@property (nonatomic,strong) XPMomentsRecommendViewController * recommendVC;
@end
@implementation XPMomentsViewController
@@ -275,9 +275,9 @@
return _latestVC;
}
- (XPMonentsRecommendViewController *)recommendVC {
- (XPMomentsRecommendViewController *)recommendVC {
if (!_recommendVC) {
_recommendVC = [[XPMonentsRecommendViewController alloc] init];
_recommendVC = [[XPMomentsRecommendViewController alloc] init];
}
return _recommendVC;
}

Some files were not shown because too many files have changed in this diff Show More