修正部分错误的单词
This commit is contained in:
@@ -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 = (
|
||||
|
@@ -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";///进房
|
||||
|
@@ -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];
|
||||
}
|
||||
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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;
|
||||
///标题
|
||||
|
@@ -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) {
|
||||
|
@@ -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
|
||||
|
@@ -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];
|
||||
|
@@ -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;
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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"
|
||||
|
@@ -70,7 +70,7 @@
|
||||
#import "XPGameOrdersListViewController.h"
|
||||
|
||||
|
||||
UIKIT_EXTERN NSString *kRequestRicket;
|
||||
UIKIT_EXTERN NSString *kRequestTicket;
|
||||
|
||||
@interface XPMineViewController ()<UITableViewDelegate, UITableViewDataSource, XPMineProtocol, XPMineHeadItemTableViewCellDelegate, XPMineHeadViewDelegate, XPHomeBannerTableViewCellDelegate>
|
||||
///顶部背景
|
||||
|
@@ -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
|
||||
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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
|
@@ -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 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{
|
||||
[self makeRequest:[NSString stringWithFormat:@"%@%@%@",@"user/",@"black/",@"add"] method:HttpRequestHelperMethodPOST completion:completion, __FUNCTION__, type,objId, nil];
|
||||
}
|
||||
@end
|
@@ -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;
|
||||
///格式
|
@@ -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
|
@@ -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
|
@@ -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
|
@@ -9,7 +9,7 @@
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface MonentsTopicModel : PIBaseModel
|
||||
@interface MomentsTopicModel : PIBaseModel
|
||||
///创建人id
|
||||
@property (nonatomic, copy) NSString *ownerUid;
|
||||
///名称
|
@@ -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"};
|
@@ -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
|
||||
|
@@ -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
|
@@ -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
|
@@ -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
|
@@ -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;
|
@@ -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
|
||||
|
@@ -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
|
@@ -9,7 +9,7 @@
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMonentsTopicListPresenter : BaseMvpPresenter
|
||||
@interface XPMomentsTopicListPresenter : BaseMvpPresenter
|
||||
- (void)getMoentsTopicList:(int)page pageSize:(int)pageSize state:(int)state;
|
||||
|
||||
/// 删除动态
|
@@ -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];
|
||||
}
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -6,7 +6,7 @@
|
||||
//
|
||||
|
||||
#import "BaseMvpPresenter.h"
|
||||
#import "MonentsInfoModel.h"
|
||||
#import "MomentsInfoModel.h"
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMonentsPublishPresenter : BaseMvpPresenter
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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];
|
||||
}
|
||||
|
@@ -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
|
||||
|
@@ -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
|
29
YuMi/Modules/YMMonents/Protocol/XPMomentsRecommendProtocol.h
Normal file
29
YuMi/Modules/YMMonents/Protocol/XPMomentsRecommendProtocol.h
Normal 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
|
21
YuMi/Modules/YMMonents/Protocol/XPMomentsTopicListProtocol.h
Normal file
21
YuMi/Modules/YMMonents/Protocol/XPMomentsTopicListProtocol.h
Normal 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
|
@@ -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;
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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;
|
||||
|
||||
|
@@ -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
|
@@ -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;
|
||||
|
||||
|
@@ -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
|
@@ -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;
|
||||
|
||||
|
@@ -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
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -9,7 +9,7 @@
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMonentsEmptyTableViewCell : UITableViewCell
|
||||
@interface XPMomentsEmptyTableViewCell : UITableViewCell
|
||||
|
||||
@end
|
||||
|
@@ -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]) {
|
40
YuMi/Modules/YMMonents/View/Cell/XPMomentsTableViewCell.h
Normal file
40
YuMi/Modules/YMMonents/View/Cell/XPMomentsTableViewCell.h
Normal 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
|
@@ -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;
|
@@ -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"
|
||||
|
@@ -10,7 +10,7 @@
|
||||
#import <Masonry/Masonry.h>
|
||||
///Tool
|
||||
#import "DJDKMIMOMColor.h"
|
||||
#import "XPMonentsLayoutConfig.h"
|
||||
#import "XPMomentsLayoutConfig.h"
|
||||
|
||||
@interface XPMonentsReplyMoreTableViewCell ()
|
||||
///查看更多
|
||||
|
@@ -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;
|
||||
|
@@ -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
|
@@ -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
|
||||
|
@@ -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;
|
||||
|
@@ -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
|
||||
|
@@ -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];
|
||||
}
|
||||
|
28
YuMi/Modules/YMMonents/View/SubViews/XPMomentsContentView.h
Normal file
28
YuMi/Modules/YMMonents/View/SubViews/XPMomentsContentView.h
Normal 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
|
@@ -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;
|
26
YuMi/Modules/YMMonents/View/SubViews/XPMomentsPhotoView.h
Normal file
26
YuMi/Modules/YMMonents/View/SubViews/XPMomentsPhotoView.h
Normal 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
|
@@ -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));
|
||||
}];
|
||||
}
|
||||
|
@@ -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
|
@@ -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];
|
||||
}
|
32
YuMi/Modules/YMMonents/View/SubViews/XPMomentsTooBarView.h
Normal file
32
YuMi/Modules/YMMonents/View/SubViews/XPMomentsTooBarView.h
Normal 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
|
@@ -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;
|
||||
}
|
||||
}
|
||||
|
@@ -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
|
@@ -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) {
|
32
YuMi/Modules/YMMonents/View/SubViews/XPMomentsUserInfoView.h
Normal file
32
YuMi/Modules/YMMonents/View/SubViews/XPMomentsUserInfoView.h
Normal 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
|
@@ -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 {
|
@@ -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
|
@@ -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
|
@@ -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
|
||||
|
@@ -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;
|
||||
|
@@ -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
|
@@ -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
|
@@ -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
|
||||
|
@@ -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;
|
||||
|
@@ -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
|
@@ -9,7 +9,7 @@
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMonentTopicContainerViewController : BaseViewController
|
||||
@interface XPMomentTopicContainerViewController : BaseViewController
|
||||
@property (nonatomic,copy) NSString *worldId;
|
||||
@end
|
||||
|
@@ -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) {
|
@@ -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
|
@@ -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;
|
||||
}
|
@@ -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
|
||||
|
@@ -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];
|
||||
}
|
@@ -9,7 +9,7 @@
|
||||
#import <JXCategoryView/JXCategoryListContainerView.h>
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMonentsRecommendViewController : MvpViewController<JXCategoryListContentViewDelegate>
|
||||
@interface XPMomentsRecommendViewController : MvpViewController<JXCategoryListContentViewDelegate>
|
||||
|
||||
@end
|
||||
|
@@ -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;
|
@@ -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;
|
||||
|
||||
|
@@ -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;
|
||||
|
@@ -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
|
||||
|
||||
|
@@ -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;
|
||||
}
|
||||
|
@@ -9,7 +9,7 @@
|
||||
|
||||
NS_ASSUME_NONNULL_BEGIN
|
||||
|
||||
@interface XPMoentsTopicListViewController : MvpViewController
|
||||
@interface XPMomentsTopicListViewController : MvpViewController
|
||||
|
||||
@end
|
||||
|
@@ -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 {
|
@@ -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
Reference in New Issue
Block a user