Compare commits

...

24 Commits

Author SHA1 Message Date
QQQ
78152a54d4 移除 A/B 相关代码。
移除 XPSimpleMineViewController
2024-05-22 19:29:14 +08:00
QQQ
e8db7fb24d 移除固定的储值入口 2024-05-22 19:17:13 +08:00
QQQ
0438d882d3 移除 A/B 相关代码。
移除 XPMomentListViewController
2024-05-22 19:10:34 +08:00
QQQ
48560b5eb6 移除 A/B 相关代码。
移除 XPHomeSloganViewController
2024-05-22 19:06:21 +08:00
QQQ
c6799634e7 移除 A/B 相关代码。
移除 XPMineSimpleUserInfoViewController
2024-05-22 19:05:50 +08:00
QQQ
9cb71643f1 移除 A/B 相关代码。
通过 [ClientConfig shareConfig].canOpen 控制页面,现在已没有相关配置,删除/调整相关内容,[ClientConfig shareConfig].canOpen == YES 的部分将保留等价逻辑/代码
2024-05-22 18:58:09 +08:00
liyuhua
7cafb54083 1.房间在线人员 2,修复bug 2024-05-21 14:17:30 +08:00
liyuhua
2af0717970 新增阿拉伯语公会跳转 2024-05-17 19:11:20 +08:00
liyuhua
4549bac2f3 1.修复阿拉伯语下闭麦图标不显示问题 2024-05-17 17:38:05 +08:00
liyuhua
2c3c6ad17d 1.缓存优化,bug修复 2024-05-17 16:57:28 +08:00
liyuhua
82a476fd46 聊天输入框,可以输入表情 2024-05-17 15:06:46 +08:00
liyuhua
d22d0aa9fe 1.UI修改
2.修复bug
2024-05-17 11:27:36 +08:00
liyuhua
b96f270acf 修复bug 2024-05-16 14:30:21 +08:00
liyuhua
1723782767 礼物动效缓存 2024-05-15 17:35:51 +08:00
liyuhua
e47967a1e6 修复bug 2024-05-15 09:54:15 +08:00
liyuhua
5361829007 molistar商店包版本修改 此commit置顶 1.0.5 2024-05-14 11:13:15 +08:00
liyuhua
5ab41af5ab molistar商店包版本修改 此commit置顶 1.0.5 2024-05-13 18:19:31 +08:00
liyuhua
92cb2b6af0 修复聊天大厅bug 2024-05-11 19:41:16 +08:00
liyuhua
f16b7a9bb2 修复聊天大厅bug 2024-05-11 19:41:06 +08:00
liyuhua
e05876be41 房间内公聊大厅 2024-05-11 10:21:48 +08:00
liyuhua
8d78cb6be5 聊天大厅接口对接 2024-05-10 14:12:47 +08:00
liyuhua
ace27b7e91 公聊大厅 2024-05-07 19:40:21 +08:00
liyuhua
3be0f8bc74 新增游戏 2024-04-30 19:30:11 +08:00
liyuhua
adabc08d07 修复bug 2024-04-28 11:41:57 +08:00
273 changed files with 8949 additions and 3835 deletions

View File

@@ -35,14 +35,11 @@
142721AF29A75F6F00C7C423 /* SJXCSMIPHelper.m in Sources */ = {isa = PBXBuildFile; fileRef = 1427218629A75F6F00C7C423 /* SJXCSMIPHelper.m */; };
142721B229A7647F00C7C423 /* XPBlankViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 142721B129A7647F00C7C423 /* XPBlankViewController.m */; };
1464C5EA29A45FC300AF7C94 /* XPButton.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5E929A45FC300AF7C94 /* XPButton.m */; };
1464C5ED29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5EC29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m */; };
1464C5F029A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5EF29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.m */; };
1464C5F329A4C18000AF7C94 /* XPIAPRechargeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5F229A4C18000AF7C94 /* XPIAPRechargeViewController.m */; };
1464C5F629A4CA8C00AF7C94 /* XPIAPRechargeCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5F529A4CA8C00AF7C94 /* XPIAPRechargeCollectionViewCell.m */; };
1464C5F929A4D00000AF7C94 /* XPIAPRechargeHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 1464C5F829A4D00000AF7C94 /* XPIAPRechargeHeaderView.m */; };
149839C4299E088000F82CBF /* XPMomentListViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 149839C3299E088000F82CBF /* XPMomentListViewController.m */; };
149839C7299E0B9F00F82CBF /* XPMomentListCollectionViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 149839C6299E0B9F00F82CBF /* XPMomentListCollectionViewCell.m */; };
14A6034929A3567200D2A6A5 /* XPSimpleMineViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 14A6034829A3567200D2A6A5 /* XPSimpleMineViewController.m */; };
14A6034C29A35EE600D2A6A5 /* XPMineItemTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 14A6034B29A35EE600D2A6A5 /* XPMineItemTableViewCell.m */; };
14A6034F29A36D8300D2A6A5 /* XPSimpleMineHeaderView.m in Sources */ = {isa = PBXBuildFile; fileRef = 14A6034E29A36D8300D2A6A5 /* XPSimpleMineHeaderView.m */; };
14B880E1299A1799005FCA1B /* XPLoginViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 14B880E0299A1799005FCA1B /* XPLoginViewController.m */; };
@@ -150,6 +147,10 @@
23194DD12AD14BF000649F51 /* DDAbstractDatabaseLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 23194DC92AD14BF000649F51 /* DDAbstractDatabaseLogger.m */; };
23194DD22AD14BF000649F51 /* DDFileLogger.m in Sources */ = {isa = PBXBuildFile; fileRef = 23194DCA2AD14BF000649F51 /* DDFileLogger.m */; };
23194DD52AD292F200649F51 /* PIPageControl.m in Sources */ = {isa = PBXBuildFile; fileRef = 23194DD42AD292F200649F51 /* PIPageControl.m */; };
2320F6392BDF732C00227EEB /* MSRoomMenuGameView.m in Sources */ = {isa = PBXBuildFile; fileRef = 2320F6382BDF732C00227EEB /* MSRoomMenuGameView.m */; };
2320F63C2BDF738E00227EEB /* MSRoomMenuGameCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 2320F63B2BDF738E00227EEB /* MSRoomMenuGameCell.m */; };
2320F63F2BDF8B3000227EEB /* MSRoomMenuGameVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 2320F63E2BDF8B3000227EEB /* MSRoomMenuGameVC.m */; };
2320F6422BE0F53F00227EEB /* MSRoomMenuGameEmptyCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 2320F6412BE0F53F00227EEB /* MSRoomMenuGameEmptyCell.m */; };
2323E0372ABDAE8F00CCAD2F /* FBSDKSettings+PISDKSettings.m in Sources */ = {isa = PBXBuildFile; fileRef = 2323E0362ABDAE8F00CCAD2F /* FBSDKSettings+PISDKSettings.m */; };
232C43EA2AB15F4100D4B2ED /* XPRoomTarrowBannerView.m in Sources */ = {isa = PBXBuildFile; fileRef = 232C43E92AB15F4100D4B2ED /* XPRoomTarrowBannerView.m */; };
232C43EC2AB169EC00D4B2ED /* pi_room_tarrow_banner.svga in Resources */ = {isa = PBXBuildFile; fileRef = 232C43EB2AB169EB00D4B2ED /* pi_room_tarrow_banner.svga */; };
@@ -207,7 +208,30 @@
234489082AC3C5DA0070E5D5 /* SudMGP.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 234489072AC3C5DA0070E5D5 /* SudMGP.framework */; };
234489092AC3C5FF0070E5D5 /* SudMGP.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = 234489072AC3C5DA0070E5D5 /* SudMGP.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
234D821E2AEC57CF0022EFEB /* YYTextAsyncLayer+PITextAsyncLayer.m in Sources */ = {isa = PBXBuildFile; fileRef = 234D821D2AEC57CF0022EFEB /* YYTextAsyncLayer+PITextAsyncLayer.m */; };
234E50A52BF5E556005CB6D5 /* MessageContentChatHallHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 234E50A42BF5E556005CB6D5 /* MessageContentChatHallHeadView.m */; };
234E50A82BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 234E50A72BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.m */; };
234E50AB2BF5F95A005CB6D5 /* MSSessionPublicChatHalIRightmageCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 234E50AA2BF5F95A005CB6D5 /* MSSessionPublicChatHalIRightmageCell.m */; };
234E50AF2BF7352C005CB6D5 /* NSTextAttachment+MSImage.m in Sources */ = {isa = PBXBuildFile; fileRef = 234E50AE2BF7352C005CB6D5 /* NSTextAttachment+MSImage.m */; };
234F44E32B3EA4F900E2B532 /* PILineManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 234F44E22B3EA4F900E2B532 /* PILineManager.swift */; };
2357145A2BE8BC6C004C81D6 /* MSSessionPublicChatHallVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714592BE8BC6C004C81D6 /* MSSessionPublicChatHallVC.m */; };
235714602BE8BD5C004C81D6 /* MSSessionScrollingModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 2357145F2BE8BD5C004C81D6 /* MSSessionScrollingModel.m */; };
235714672BE8C009004C81D6 /* MSSessionScrollingView.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714662BE8C009004C81D6 /* MSSessionScrollingView.m */; };
2357146B2BEA0110004C81D6 /* MSSessionPublicChatHallTopModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 2357146A2BEA0110004C81D6 /* MSSessionPublicChatHallTopModel.m */; };
2357146E2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 2357146D2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.m */; };
235714712BEB97BD004C81D6 /* MSSessionScrollingItemView.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714702BEB97BD004C81D6 /* MSSessionScrollingItemView.m */; };
235714742BEC6E3D004C81D6 /* MSSessionReleaseHeadlinesView.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714732BEC6E3D004C81D6 /* MSSessionReleaseHeadlinesView.m */; };
235714772BEC9E5E004C81D6 /* MSSessionContextHeadlinesView.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714762BEC9E5E004C81D6 /* MSSessionContextHeadlinesView.m */; };
2357147A2BECA102004C81D6 /* MessageHeadlinesModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714792BECA102004C81D6 /* MessageHeadlinesModel.m */; };
235714802BECB217004C81D6 /* MSSessionReleaseHeadlinesPayView.m in Sources */ = {isa = PBXBuildFile; fileRef = 2357147F2BECB217004C81D6 /* MSSessionReleaseHeadlinesPayView.m */; };
235714892BECC38F004C81D6 /* MessageHeadlinesTextModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714882BECC38F004C81D6 /* MessageHeadlinesTextModel.m */; };
2357148C2BECEE33004C81D6 /* MSSessionPublicChatHalTextCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 2357148B2BECEE33004C81D6 /* MSSessionPublicChatHalTextCell.m */; };
2357148F2BEDC94D004C81D6 /* MSSessionPublicChatHalImageCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 2357148E2BEDC94D004C81D6 /* MSSessionPublicChatHalImageCell.m */; };
235714922BEDC9B1004C81D6 /* MSSessionPublicChatHalImageModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714912BEDC9B1004C81D6 /* MSSessionPublicChatHalImageModel.m */; };
235714952BEDF517004C81D6 /* MsRoomMessagChatHallView.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714942BEDF517004C81D6 /* MsRoomMessagChatHallView.m */; };
235714982BEDF54E004C81D6 /* MsRoomMessageMainView.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714972BEDF54E004C81D6 /* MsRoomMessageMainView.m */; };
2357149B2BEE2AD1004C81D6 /* MsRoomMessagChatHallCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 2357149A2BEE2AD1004C81D6 /* MsRoomMessagChatHallCell.m */; };
2357149E2BEF0F6D004C81D6 /* MSSessionScrollingItemCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 2357149D2BEF0F6D004C81D6 /* MSSessionScrollingItemCell.m */; };
235714A12BEF510B004C81D6 /* MSSessionScrollingItemFlowLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = 235714A02BEF510B004C81D6 /* MSSessionScrollingItemFlowLayout.m */; };
235A451A2B04A352009753F5 /* PIRoomActivityWebView.m in Sources */ = {isa = PBXBuildFile; fileRef = 235A45192B04A352009753F5 /* PIRoomActivityWebView.m */; };
235A451D2B04A452009753F5 /* PIRoomActivityWebCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 235A451C2B04A452009753F5 /* PIRoomActivityWebCell.m */; };
235A45232B04BEB6009753F5 /* PIBaseModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 235A45222B04BEB6009753F5 /* PIBaseModel.m */; };
@@ -339,8 +363,11 @@
23959FE72BB15C930085A282 /* UploadFileModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 23959FE62BB15C930085A282 /* UploadFileModel.m */; };
2396FCE42B22BE5D0014021D /* pi_area_info.json in Resources */ = {isa = PBXBuildFile; fileRef = 2396FCE32B22BE5D0014021D /* pi_area_info.json */; };
239BEEDB2AA1E058005CDA94 /* PIHoemCategoryTitleView.m in Sources */ = {isa = PBXBuildFile; fileRef = 239BEEDA2AA1E058005CDA94 /* PIHoemCategoryTitleView.m */; };
239D0F962BFB3296002977CE /* MSRoomOnLineView.m in Sources */ = {isa = PBXBuildFile; fileRef = 239D0F952BFB3296002977CE /* MSRoomOnLineView.m */; };
239D0F992BFB43BC002977CE /* MSRoomOnLineAvatarView.m in Sources */ = {isa = PBXBuildFile; fileRef = 239D0F982BFB43BC002977CE /* MSRoomOnLineAvatarView.m */; };
23A03F2D2B4408CD0094227A /* pi_room_lucky_gift.svga in Resources */ = {isa = PBXBuildFile; fileRef = 23A03F2C2B4408CD0094227A /* pi_room_lucky_gift.svga */; };
23A439742AA1CF7C002E6039 /* XPNewHomeHeadView.m in Sources */ = {isa = PBXBuildFile; fileRef = 23A439732AA1CF7C002E6039 /* XPNewHomeHeadView.m */; };
23A7FB692BDDEDFA00411860 /* MSRoomGameWebVC.m in Sources */ = {isa = PBXBuildFile; fileRef = 23A7FB682BDDEDFA00411860 /* MSRoomGameWebVC.m */; };
23B2AEC12A64E9C200543D17 /* LoginForgetEditView.m in Sources */ = {isa = PBXBuildFile; fileRef = 23B2AEC02A64E9C200543D17 /* LoginForgetEditView.m */; };
23B2AEC42A6516C200543D17 /* LoginForgetPasswordViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 23B2AEC22A6516C200543D17 /* LoginForgetPasswordViewController.m */; };
23B8D8D82B85F8B900CA472F /* PIHoemCategoryTitleCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 23B8D8D72B85F8B900CA472F /* PIHoemCategoryTitleCell.m */; };
@@ -1192,7 +1219,6 @@
E87DF4D72A42C9C3009C1185 /* HomePlayRoomModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4D52A42C9C3009C1185 /* HomePlayRoomModel.m */; };
E87DF4DA2A42C9D9009C1185 /* HomeCollectRoomModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4D82A42C9D8009C1185 /* HomeCollectRoomModel.m */; };
E87DF4DD2A42CA12009C1185 /* HomeSearchResultModel.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4DB2A42CA12009C1185 /* HomeSearchResultModel.m */; };
E87DF4E02A42CA92009C1185 /* XPHomeSloganViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4DE2A42CA92009C1185 /* XPHomeSloganViewController.m */; };
E87DF4E42A42CAD2009C1185 /* XPHomeSearchNavView.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4E22A42CAD2009C1185 /* XPHomeSearchNavView.m */; };
E87DF4E72A42CB00009C1185 /* XPHomePresenter.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4E52A42CAFF009C1185 /* XPHomePresenter.m */; };
E87DF4EC2A42CB60009C1185 /* XPSearchListTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = E87DF4EA2A42CB60009C1185 /* XPSearchListTableViewCell.m */; };
@@ -1558,8 +1584,6 @@
142721B129A7647F00C7C423 /* XPBlankViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPBlankViewController.m; sourceTree = "<group>"; };
1464C5E829A45FC300AF7C94 /* XPButton.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPButton.h; sourceTree = "<group>"; };
1464C5E929A45FC300AF7C94 /* XPButton.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPButton.m; sourceTree = "<group>"; };
1464C5EB29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineSimpleUserInfoViewController.h; sourceTree = "<group>"; };
1464C5EC29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineSimpleUserInfoViewController.m; sourceTree = "<group>"; };
1464C5EE29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineSimpleUserInfoHeaderView.h; sourceTree = "<group>"; };
1464C5EF29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineSimpleUserInfoHeaderView.m; sourceTree = "<group>"; };
1464C5F129A4C18000AF7C94 /* XPIAPRechargeViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPIAPRechargeViewController.h; sourceTree = "<group>"; };
@@ -1568,12 +1592,8 @@
1464C5F529A4CA8C00AF7C94 /* XPIAPRechargeCollectionViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPIAPRechargeCollectionViewCell.m; sourceTree = "<group>"; };
1464C5F729A4D00000AF7C94 /* XPIAPRechargeHeaderView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPIAPRechargeHeaderView.h; sourceTree = "<group>"; };
1464C5F829A4D00000AF7C94 /* XPIAPRechargeHeaderView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPIAPRechargeHeaderView.m; sourceTree = "<group>"; };
149839C2299E088000F82CBF /* XPMomentListViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentListViewController.h; sourceTree = "<group>"; };
149839C3299E088000F82CBF /* XPMomentListViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentListViewController.m; sourceTree = "<group>"; };
149839C5299E0B9F00F82CBF /* XPMomentListCollectionViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMomentListCollectionViewCell.h; sourceTree = "<group>"; };
149839C6299E0B9F00F82CBF /* XPMomentListCollectionViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMomentListCollectionViewCell.m; sourceTree = "<group>"; };
14A6034729A3567200D2A6A5 /* XPSimpleMineViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSimpleMineViewController.h; sourceTree = "<group>"; };
14A6034829A3567200D2A6A5 /* XPSimpleMineViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPSimpleMineViewController.m; sourceTree = "<group>"; };
14A6034A29A35EE600D2A6A5 /* XPMineItemTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPMineItemTableViewCell.h; sourceTree = "<group>"; };
14A6034B29A35EE600D2A6A5 /* XPMineItemTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPMineItemTableViewCell.m; sourceTree = "<group>"; };
14A6034D29A36D8300D2A6A5 /* XPSimpleMineHeaderView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPSimpleMineHeaderView.h; sourceTree = "<group>"; };
@@ -1798,6 +1818,14 @@
23194DCB2AD14BF000649F51 /* DDASLLogger.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = DDASLLogger.h; sourceTree = "<group>"; };
23194DD32AD292F200649F51 /* PIPageControl.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PIPageControl.h; sourceTree = "<group>"; };
23194DD42AD292F200649F51 /* PIPageControl.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PIPageControl.m; sourceTree = "<group>"; };
2320F6372BDF732C00227EEB /* MSRoomMenuGameView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSRoomMenuGameView.h; sourceTree = "<group>"; };
2320F6382BDF732C00227EEB /* MSRoomMenuGameView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSRoomMenuGameView.m; sourceTree = "<group>"; };
2320F63A2BDF738E00227EEB /* MSRoomMenuGameCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSRoomMenuGameCell.h; sourceTree = "<group>"; };
2320F63B2BDF738E00227EEB /* MSRoomMenuGameCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSRoomMenuGameCell.m; sourceTree = "<group>"; };
2320F63D2BDF8B3000227EEB /* MSRoomMenuGameVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSRoomMenuGameVC.h; sourceTree = "<group>"; };
2320F63E2BDF8B3000227EEB /* MSRoomMenuGameVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSRoomMenuGameVC.m; sourceTree = "<group>"; };
2320F6402BE0F53F00227EEB /* MSRoomMenuGameEmptyCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSRoomMenuGameEmptyCell.h; sourceTree = "<group>"; };
2320F6412BE0F53F00227EEB /* MSRoomMenuGameEmptyCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSRoomMenuGameEmptyCell.m; sourceTree = "<group>"; };
2323E0352ABDAE8F00CCAD2F /* FBSDKSettings+PISDKSettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "FBSDKSettings+PISDKSettings.h"; path = "YuMi/Appdelegate/FBSDKSettings+PISDKSettings.h"; sourceTree = SOURCE_ROOT; };
2323E0362ABDAE8F00CCAD2F /* FBSDKSettings+PISDKSettings.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = "FBSDKSettings+PISDKSettings.m"; path = "YuMi/Appdelegate/FBSDKSettings+PISDKSettings.m"; sourceTree = SOURCE_ROOT; };
232C43E82AB15F4100D4B2ED /* XPRoomTarrowBannerView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPRoomTarrowBannerView.h; sourceTree = "<group>"; };
@@ -1910,7 +1938,53 @@
234489072AC3C5DA0070E5D5 /* SudMGP.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; path = SudMGP.framework; sourceTree = "<group>"; };
234D821C2AEC57CF0022EFEB /* YYTextAsyncLayer+PITextAsyncLayer.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; name = "YYTextAsyncLayer+PITextAsyncLayer.h"; path = "YuMi/Appdelegate/YYTextAsyncLayer+PITextAsyncLayer.h"; sourceTree = SOURCE_ROOT; };
234D821D2AEC57CF0022EFEB /* YYTextAsyncLayer+PITextAsyncLayer.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; name = "YYTextAsyncLayer+PITextAsyncLayer.m"; path = "YuMi/Appdelegate/YYTextAsyncLayer+PITextAsyncLayer.m"; sourceTree = SOURCE_ROOT; };
234E50A32BF5E556005CB6D5 /* MessageContentChatHallHeadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MessageContentChatHallHeadView.h; sourceTree = "<group>"; };
234E50A42BF5E556005CB6D5 /* MessageContentChatHallHeadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MessageContentChatHallHeadView.m; sourceTree = "<group>"; };
234E50A62BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionPublicChatHalRightTextCell.h; sourceTree = "<group>"; };
234E50A72BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionPublicChatHalRightTextCell.m; sourceTree = "<group>"; };
234E50A92BF5F95A005CB6D5 /* MSSessionPublicChatHalIRightmageCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionPublicChatHalIRightmageCell.h; sourceTree = "<group>"; };
234E50AA2BF5F95A005CB6D5 /* MSSessionPublicChatHalIRightmageCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionPublicChatHalIRightmageCell.m; sourceTree = "<group>"; };
234E50AD2BF7352C005CB6D5 /* NSTextAttachment+MSImage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "NSTextAttachment+MSImage.h"; sourceTree = "<group>"; };
234E50AE2BF7352C005CB6D5 /* NSTextAttachment+MSImage.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "NSTextAttachment+MSImage.m"; sourceTree = "<group>"; };
234F44E22B3EA4F900E2B532 /* PILineManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PILineManager.swift; sourceTree = "<group>"; };
235714582BE8BC6C004C81D6 /* MSSessionPublicChatHallVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionPublicChatHallVC.h; sourceTree = "<group>"; };
235714592BE8BC6C004C81D6 /* MSSessionPublicChatHallVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionPublicChatHallVC.m; sourceTree = "<group>"; };
2357145E2BE8BD5C004C81D6 /* MSSessionScrollingModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionScrollingModel.h; sourceTree = "<group>"; };
2357145F2BE8BD5C004C81D6 /* MSSessionScrollingModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionScrollingModel.m; sourceTree = "<group>"; };
235714652BE8C009004C81D6 /* MSSessionScrollingView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionScrollingView.h; sourceTree = "<group>"; };
235714662BE8C009004C81D6 /* MSSessionScrollingView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionScrollingView.m; sourceTree = "<group>"; };
235714692BEA0110004C81D6 /* MSSessionPublicChatHallTopModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionPublicChatHallTopModel.h; sourceTree = "<group>"; };
2357146A2BEA0110004C81D6 /* MSSessionPublicChatHallTopModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionPublicChatHallTopModel.m; sourceTree = "<group>"; };
2357146C2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionPublicChatHallHeadView.h; sourceTree = "<group>"; };
2357146D2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionPublicChatHallHeadView.m; sourceTree = "<group>"; };
2357146F2BEB97BD004C81D6 /* MSSessionScrollingItemView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionScrollingItemView.h; sourceTree = "<group>"; };
235714702BEB97BD004C81D6 /* MSSessionScrollingItemView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionScrollingItemView.m; sourceTree = "<group>"; };
235714722BEC6E3D004C81D6 /* MSSessionReleaseHeadlinesView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionReleaseHeadlinesView.h; sourceTree = "<group>"; };
235714732BEC6E3D004C81D6 /* MSSessionReleaseHeadlinesView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionReleaseHeadlinesView.m; sourceTree = "<group>"; };
235714752BEC9E5E004C81D6 /* MSSessionContextHeadlinesView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionContextHeadlinesView.h; sourceTree = "<group>"; };
235714762BEC9E5E004C81D6 /* MSSessionContextHeadlinesView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionContextHeadlinesView.m; sourceTree = "<group>"; };
235714782BECA102004C81D6 /* MessageHeadlinesModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MessageHeadlinesModel.h; sourceTree = "<group>"; };
235714792BECA102004C81D6 /* MessageHeadlinesModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MessageHeadlinesModel.m; sourceTree = "<group>"; };
2357147E2BECB217004C81D6 /* MSSessionReleaseHeadlinesPayView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionReleaseHeadlinesPayView.h; sourceTree = "<group>"; };
2357147F2BECB217004C81D6 /* MSSessionReleaseHeadlinesPayView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionReleaseHeadlinesPayView.m; sourceTree = "<group>"; };
235714872BECC38F004C81D6 /* MessageHeadlinesTextModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MessageHeadlinesTextModel.h; sourceTree = "<group>"; };
235714882BECC38F004C81D6 /* MessageHeadlinesTextModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MessageHeadlinesTextModel.m; sourceTree = "<group>"; };
2357148A2BECEE33004C81D6 /* MSSessionPublicChatHalTextCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionPublicChatHalTextCell.h; sourceTree = "<group>"; };
2357148B2BECEE33004C81D6 /* MSSessionPublicChatHalTextCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionPublicChatHalTextCell.m; sourceTree = "<group>"; };
2357148D2BEDC94D004C81D6 /* MSSessionPublicChatHalImageCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionPublicChatHalImageCell.h; sourceTree = "<group>"; };
2357148E2BEDC94D004C81D6 /* MSSessionPublicChatHalImageCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionPublicChatHalImageCell.m; sourceTree = "<group>"; };
235714902BEDC9B1004C81D6 /* MSSessionPublicChatHalImageModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionPublicChatHalImageModel.h; sourceTree = "<group>"; };
235714912BEDC9B1004C81D6 /* MSSessionPublicChatHalImageModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionPublicChatHalImageModel.m; sourceTree = "<group>"; };
235714932BEDF517004C81D6 /* MsRoomMessagChatHallView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MsRoomMessagChatHallView.h; sourceTree = "<group>"; };
235714942BEDF517004C81D6 /* MsRoomMessagChatHallView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MsRoomMessagChatHallView.m; sourceTree = "<group>"; };
235714962BEDF54E004C81D6 /* MsRoomMessageMainView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MsRoomMessageMainView.h; sourceTree = "<group>"; };
235714972BEDF54E004C81D6 /* MsRoomMessageMainView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MsRoomMessageMainView.m; sourceTree = "<group>"; };
235714992BEE2AD1004C81D6 /* MsRoomMessagChatHallCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MsRoomMessagChatHallCell.h; sourceTree = "<group>"; };
2357149A2BEE2AD1004C81D6 /* MsRoomMessagChatHallCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MsRoomMessagChatHallCell.m; sourceTree = "<group>"; };
2357149C2BEF0F6D004C81D6 /* MSSessionScrollingItemCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionScrollingItemCell.h; sourceTree = "<group>"; };
2357149D2BEF0F6D004C81D6 /* MSSessionScrollingItemCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionScrollingItemCell.m; sourceTree = "<group>"; };
2357149F2BEF510B004C81D6 /* MSSessionScrollingItemFlowLayout.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSSessionScrollingItemFlowLayout.h; sourceTree = "<group>"; };
235714A02BEF510B004C81D6 /* MSSessionScrollingItemFlowLayout.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSSessionScrollingItemFlowLayout.m; sourceTree = "<group>"; };
235A45182B04A352009753F5 /* PIRoomActivityWebView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PIRoomActivityWebView.h; sourceTree = "<group>"; };
235A45192B04A352009753F5 /* PIRoomActivityWebView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PIRoomActivityWebView.m; sourceTree = "<group>"; };
235A451B2B04A452009753F5 /* PIRoomActivityWebCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PIRoomActivityWebCell.h; sourceTree = "<group>"; };
@@ -2164,9 +2238,15 @@
2396FCE32B22BE5D0014021D /* pi_area_info.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = pi_area_info.json; sourceTree = "<group>"; };
239BEED92AA1E058005CDA94 /* PIHoemCategoryTitleView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = PIHoemCategoryTitleView.h; sourceTree = "<group>"; };
239BEEDA2AA1E058005CDA94 /* PIHoemCategoryTitleView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = PIHoemCategoryTitleView.m; sourceTree = "<group>"; };
239D0F942BFB3296002977CE /* MSRoomOnLineView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSRoomOnLineView.h; sourceTree = "<group>"; };
239D0F952BFB3296002977CE /* MSRoomOnLineView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSRoomOnLineView.m; sourceTree = "<group>"; };
239D0F972BFB43BC002977CE /* MSRoomOnLineAvatarView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSRoomOnLineAvatarView.h; sourceTree = "<group>"; };
239D0F982BFB43BC002977CE /* MSRoomOnLineAvatarView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSRoomOnLineAvatarView.m; sourceTree = "<group>"; };
23A03F2C2B4408CD0094227A /* pi_room_lucky_gift.svga */ = {isa = PBXFileReference; lastKnownFileType = file; path = pi_room_lucky_gift.svga; sourceTree = "<group>"; };
23A439722AA1CF7C002E6039 /* XPNewHomeHeadView.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = XPNewHomeHeadView.h; sourceTree = "<group>"; };
23A439732AA1CF7C002E6039 /* XPNewHomeHeadView.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = XPNewHomeHeadView.m; sourceTree = "<group>"; };
23A7FB672BDDEDFA00411860 /* MSRoomGameWebVC.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MSRoomGameWebVC.h; sourceTree = "<group>"; };
23A7FB682BDDEDFA00411860 /* MSRoomGameWebVC.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MSRoomGameWebVC.m; sourceTree = "<group>"; };
23B2AEBF2A64E9C200543D17 /* LoginForgetEditView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LoginForgetEditView.h; sourceTree = "<group>"; };
23B2AEC02A64E9C200543D17 /* LoginForgetEditView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LoginForgetEditView.m; sourceTree = "<group>"; };
23B2AEC22A6516C200543D17 /* LoginForgetPasswordViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LoginForgetPasswordViewController.m; sourceTree = "<group>"; };
@@ -3726,8 +3806,6 @@
E87DF4D92A42C9D9009C1185 /* HomeCollectRoomModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomeCollectRoomModel.h; sourceTree = "<group>"; };
E87DF4DB2A42CA12009C1185 /* HomeSearchResultModel.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = HomeSearchResultModel.m; sourceTree = "<group>"; };
E87DF4DC2A42CA12009C1185 /* HomeSearchResultModel.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = HomeSearchResultModel.h; sourceTree = "<group>"; };
E87DF4DE2A42CA92009C1185 /* XPHomeSloganViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPHomeSloganViewController.m; sourceTree = "<group>"; };
E87DF4DF2A42CA92009C1185 /* XPHomeSloganViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPHomeSloganViewController.h; sourceTree = "<group>"; };
E87DF4E22A42CAD2009C1185 /* XPHomeSearchNavView.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPHomeSearchNavView.m; sourceTree = "<group>"; };
E87DF4E32A42CAD2009C1185 /* XPHomeSearchNavView.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = XPHomeSearchNavView.h; sourceTree = "<group>"; };
E87DF4E52A42CAFF009C1185 /* XPHomePresenter.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = XPHomePresenter.m; sourceTree = "<group>"; };
@@ -4453,6 +4531,8 @@
E80E09AC2A41336500CD2BE7 /* XPWebViewNavView.m */,
18E7B33026F317A20064BC9B /* XPWebViewController.h */,
18E7B33126F317A20064BC9B /* XPWebViewController.m */,
23A7FB672BDDEDFA00411860 /* MSRoomGameWebVC.h */,
23A7FB682BDDEDFA00411860 /* MSRoomGameWebVC.m */,
23EE97082BA2D39C00475D69 /* PIWebViewSavePhotoView.h */,
23EE97092BA2D39C00475D69 /* PIWebViewSavePhotoView.m */,
);
@@ -4912,6 +4992,7 @@
23E9E9AB2A81E8E900B792F2 /* Event */,
E83645A42A40AEF600E0DBE4 /* Bundle */,
E83645652A40A2CA00E0DBE4 /* CardManager */,
234E50AC2BF734FC005CB6D5 /* NSTextAttachment */,
1427213629A75F6F00C7C423 /* CocoaHttpServer */,
E8F61356291E269700E12650 /* Safe */,
9B09979F27F19D1C00EB8F14 /* QGVAPlayer */,
@@ -5080,6 +5161,10 @@
9B88E20B28C5EB8300D26FBA /* MessageContentRedPacketView.m */,
E8778AE22988B57B00CF139B /* MessageContentRevokeView.h */,
E8778AE32988B57B00CF139B /* MessageContentRevokeView.m */,
235714752BEC9E5E004C81D6 /* MSSessionContextHeadlinesView.h */,
235714762BEC9E5E004C81D6 /* MSSessionContextHeadlinesView.m */,
234E50A32BF5E556005CB6D5 /* MessageContentChatHallHeadView.h */,
234E50A42BF5E556005CB6D5 /* MessageContentChatHallHeadView.m */,
);
path = Content;
sourceTree = "<group>";
@@ -5096,6 +5181,10 @@
18F404BA2760982000A6C548 /* ChatLimitModel.m */,
E885D5342977CE28004DC088 /* SessionSettingModel.h */,
E885D5352977CE28004DC088 /* SessionSettingModel.m */,
2357145E2BE8BD5C004C81D6 /* MSSessionScrollingModel.h */,
2357145F2BE8BD5C004C81D6 /* MSSessionScrollingModel.m */,
235714692BEA0110004C81D6 /* MSSessionPublicChatHallTopModel.h */,
2357146A2BEA0110004C81D6 /* MSSessionPublicChatHallTopModel.m */,
);
path = Model;
sourceTree = "<group>";
@@ -5499,6 +5588,15 @@
path = UILabel;
sourceTree = "<group>";
};
234E50AC2BF734FC005CB6D5 /* NSTextAttachment */ = {
isa = PBXGroup;
children = (
234E50AD2BF7352C005CB6D5 /* NSTextAttachment+MSImage.h */,
234E50AE2BF7352C005CB6D5 /* NSTextAttachment+MSImage.m */,
);
path = NSTextAttachment;
sourceTree = "<group>";
};
234F44E12B3EA4DC00E2B532 /* YMLine */ = {
isa = PBXGroup;
children = (
@@ -5875,6 +5973,17 @@
path = Api;
sourceTree = "<group>";
};
239D0F932BFB3284002977CE /* MSRoomOnLineView */ = {
isa = PBXGroup;
children = (
239D0F942BFB3296002977CE /* MSRoomOnLineView.h */,
239D0F952BFB3296002977CE /* MSRoomOnLineView.m */,
239D0F972BFB43BC002977CE /* MSRoomOnLineAvatarView.h */,
239D0F982BFB43BC002977CE /* MSRoomOnLineAvatarView.m */,
);
path = MSRoomOnLineView;
sourceTree = "<group>";
};
23CEFC082AFB8FC100576D89 /* sdkContent */ = {
isa = PBXGroup;
children = (
@@ -6383,6 +6492,8 @@
23FF256C2ABC48810064E904 /* XPSessionMainViewController.m */,
9B7D80482753783D003DAC0C /* SessionViewController.h */,
9B7D80492753783D003DAC0C /* SessionViewController.m */,
235714582BE8BC6C004C81D6 /* MSSessionPublicChatHallVC.h */,
235714592BE8BC6C004C81D6 /* MSSessionPublicChatHallVC.m */,
E8E20BD9281645300033B688 /* SessionInfoViewController.h */,
E8E20BDA281645300033B688 /* SessionInfoViewController.m */,
E86E79D428A4EA0C006DAF48 /* SessionRiskCache.h */,
@@ -7218,6 +7329,12 @@
E82107862987E49100DE7040 /* MessageRedPacketModel.m */,
E8778ADF2988B4C300CF139B /* MessageRevokeModel.h */,
E8778AE02988B4C300CF139B /* MessageRevokeModel.m */,
235714782BECA102004C81D6 /* MessageHeadlinesModel.h */,
235714792BECA102004C81D6 /* MessageHeadlinesModel.m */,
235714872BECC38F004C81D6 /* MessageHeadlinesTextModel.h */,
235714882BECC38F004C81D6 /* MessageHeadlinesTextModel.m */,
235714902BEDC9B1004C81D6 /* MSSessionPublicChatHalImageModel.h */,
235714912BEDC9B1004C81D6 /* MSSessionPublicChatHalImageModel.m */,
);
path = SesssionModel;
sourceTree = "<group>";
@@ -7439,8 +7556,6 @@
E8AB632328AE10310023B0D2 /* XPMoentsTopicListViewController.m */,
E8AB632A28AE19600023B0D2 /* XPMonentsMineViewController.h */,
E8AB632B28AE19600023B0D2 /* XPMonentsMineViewController.m */,
149839C2299E088000F82CBF /* XPMomentListViewController.h */,
149839C3299E088000F82CBF /* XPMomentListViewController.m */,
14EB640729A5BDDD00A4A00B /* XPMomentsSimpleDetailViewController.h */,
14EB640829A5BDDD00A4A00B /* XPMomentsSimpleDetailViewController.m */,
14EB640B29A5C16000A4A00B /* XPMomentsSimpleDetailNav.h */,
@@ -8064,6 +8179,8 @@
E84B0E412727EE0A008818C6 /* XPRoomMessageHeaderView.m */,
E84B0E3D2727EDF6008818C6 /* XPRoomMessageTableViewCell.h */,
E84B0E3E2727EDF6008818C6 /* XPRoomMessageTableViewCell.m */,
235714992BEE2AD1004C81D6 /* MsRoomMessagChatHallCell.h */,
2357149A2BEE2AD1004C81D6 /* MsRoomMessagChatHallCell.m */,
);
path = View;
sourceTree = "<group>";
@@ -8653,6 +8770,14 @@
children = (
9B7D804B27537950003DAC0C /* MessageCell.h */,
9B7D804C27537950003DAC0C /* MessageCell.m */,
2357148A2BECEE33004C81D6 /* MSSessionPublicChatHalTextCell.h */,
2357148B2BECEE33004C81D6 /* MSSessionPublicChatHalTextCell.m */,
234E50A62BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.h */,
234E50A72BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.m */,
2357148D2BEDC94D004C81D6 /* MSSessionPublicChatHalImageCell.h */,
2357148E2BEDC94D004C81D6 /* MSSessionPublicChatHalImageCell.m */,
234E50A92BF5F95A005CB6D5 /* MSSessionPublicChatHalIRightmageCell.h */,
234E50AA2BF5F95A005CB6D5 /* MSSessionPublicChatHalIRightmageCell.m */,
E875A1B629755EE200AB1BBD /* SessionUserInfoTableViewCell.h */,
E875A1B729755EE200AB1BBD /* SessionUserInfoTableViewCell.m */,
E885D531297798E1004DC088 /* SessionSettingTableViewCell.h */,
@@ -9126,8 +9251,6 @@
E87E62522A3F55B2002F68C9 /* View */ = {
isa = PBXGroup;
children = (
E87DF4DF2A42CA92009C1185 /* XPHomeSloganViewController.h */,
E87DF4DE2A42CA92009C1185 /* XPHomeSloganViewController.m */,
E87DF4B82A42C7BB009C1185 /* Search */,
E87E625F2A3F5669002F68C9 /* Cell */,
E87E625E2A3F565D002F68C9 /* CustomView */,
@@ -9383,8 +9506,6 @@
E8D34D6328084E40009C4835 /* XPMineUserInfoGiftWallViewController.m */,
E8998D892859CB6A00C68558 /* XPMineUserInfoGiftWallSubViewController.h */,
E8998D8A2859CB6A00C68558 /* XPMineUserInfoGiftWallSubViewController.m */,
1464C5EB29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.h */,
1464C5EC29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m */,
1464C5EE29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.h */,
1464C5EF29A49DDD00AF7C94 /* XPMineSimpleUserInfoHeaderView.m */,
);
@@ -9469,6 +9590,20 @@
E88E4A7F297673DC00019A50 /* SessionNavLiveView.m */,
E885D5372977D10E004DC088 /* SessionSettingUserView.h */,
E885D5382977D10E004DC088 /* SessionSettingUserView.m */,
235714652BE8C009004C81D6 /* MSSessionScrollingView.h */,
235714662BE8C009004C81D6 /* MSSessionScrollingView.m */,
2357149C2BEF0F6D004C81D6 /* MSSessionScrollingItemCell.h */,
2357149D2BEF0F6D004C81D6 /* MSSessionScrollingItemCell.m */,
2357149F2BEF510B004C81D6 /* MSSessionScrollingItemFlowLayout.h */,
235714A02BEF510B004C81D6 /* MSSessionScrollingItemFlowLayout.m */,
2357146F2BEB97BD004C81D6 /* MSSessionScrollingItemView.h */,
235714702BEB97BD004C81D6 /* MSSessionScrollingItemView.m */,
2357146C2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.h */,
2357146D2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.m */,
235714722BEC6E3D004C81D6 /* MSSessionReleaseHeadlinesView.h */,
235714732BEC6E3D004C81D6 /* MSSessionReleaseHeadlinesView.m */,
2357147E2BECB217004C81D6 /* MSSessionReleaseHeadlinesPayView.h */,
2357147F2BECB217004C81D6 /* MSSessionReleaseHeadlinesPayView.m */,
);
path = View;
sourceTree = "<group>";
@@ -9788,6 +9923,7 @@
E8AEAED8271413530017FCE0 /* View */ = {
isa = PBXGroup;
children = (
239D0F932BFB3284002977CE /* MSRoomOnLineView */,
E880B396278BD3D800A83B0D /* AcrossRoomPK */,
E8AEAEE527141ACC0017FCE0 /* ActivityContainerView */,
9B7D904A287BC4FC0033A45E /* AnchorCycleView */,
@@ -9864,8 +10000,12 @@
E84B0E47272801F6008818C6 /* Tool */,
E84B0E432727EF2C008818C6 /* Model */,
E84B0E3C2727EDD4008818C6 /* View */,
235714962BEDF54E004C81D6 /* MsRoomMessageMainView.h */,
235714972BEDF54E004C81D6 /* MsRoomMessageMainView.m */,
E8AEAEF127141C7C0017FCE0 /* XPRoomMessageContainerView.h */,
E8AEAEF227141C7C0017FCE0 /* XPRoomMessageContainerView.m */,
235714932BEDF517004C81D6 /* MsRoomMessagChatHallView.h */,
235714942BEDF517004C81D6 /* MsRoomMessagChatHallView.m */,
);
path = MessageContainerView;
sourceTree = "<group>";
@@ -9906,6 +10046,14 @@
E8EE827C272B9A2300A17217 /* XPRoomSendTextView.m */,
E8AEAEEE27141C430017FCE0 /* XPRoomMenuContainerView.h */,
E8AEAEEF27141C430017FCE0 /* XPRoomMenuContainerView.m */,
2320F6372BDF732C00227EEB /* MSRoomMenuGameView.h */,
2320F6382BDF732C00227EEB /* MSRoomMenuGameView.m */,
2320F63D2BDF8B3000227EEB /* MSRoomMenuGameVC.h */,
2320F63E2BDF8B3000227EEB /* MSRoomMenuGameVC.m */,
2320F63A2BDF738E00227EEB /* MSRoomMenuGameCell.h */,
2320F63B2BDF738E00227EEB /* MSRoomMenuGameCell.m */,
2320F6402BE0F53F00227EEB /* MSRoomMenuGameEmptyCell.h */,
2320F6412BE0F53F00227EEB /* MSRoomMenuGameEmptyCell.m */,
);
path = MenuContainerView;
sourceTree = "<group>";
@@ -10373,8 +10521,6 @@
9BD2ECCD288F829600F5CD9A /* XPMineFootPrintViewController.m */,
9B1B729328002099003FACE9 /* XPMineFansTeamViewController.h */,
9B1B729428002099003FACE9 /* XPMineFansTeamViewController.m */,
14A6034729A3567200D2A6A5 /* XPSimpleMineViewController.h */,
14A6034829A3567200D2A6A5 /* XPSimpleMineViewController.m */,
14A6034A29A35EE600D2A6A5 /* XPMineItemTableViewCell.h */,
14A6034B29A35EE600D2A6A5 /* XPMineItemTableViewCell.m */,
14A6034D29A36D8300D2A6A5 /* XPSimpleMineHeaderView.h */,
@@ -11100,9 +11246,11 @@
E8751E6E28A64F990056EF44 /* XPSailingEmptyTableViewCell.m in Sources */,
E87E625A2A3F560B002F68C9 /* XPHomeRecommendViewController.m in Sources */,
E8950189282CFFB1007E459A /* XPMonentsLayoutConfig.m in Sources */,
2357149B2BEE2AD1004C81D6 /* MsRoomMessagChatHallCell.m in Sources */,
E81061032987CFCE00B772F0 /* MessageSkillCardModel.m in Sources */,
9BD9A18727A120FD004186FE /* XPMineVisitorUnReadModel.m in Sources */,
E85E7BAD2A4EC99300B6D00A /* XPMineGiveDiamondDetailsCell.m in Sources */,
2320F63C2BDF738E00227EEB /* MSRoomMenuGameCell.m in Sources */,
E824543D26F58C3A00BE8163 /* XPLoginBindSuccessView.m in Sources */,
E85E7B282A4EB0D300B6D00A /* XPClanMenuView.m in Sources */,
9BE01AF72893E7F500B50299 /* XPNewUserRechargeCollectionViewCell.m in Sources */,
@@ -11110,6 +11258,7 @@
E8EEB8F726FC2673007C6EBA /* UserPhoto.m in Sources */,
E81061002987CDCC00B772F0 /* MessageTweetModel.m in Sources */,
E87DF4CC2A42C960009C1185 /* HomeBannerInfoModel.m in Sources */,
235714892BECC38F004C81D6 /* MessageHeadlinesTextModel.m in Sources */,
E8664EDF27E45EC7000171BA /* XPRoomPKRecordPresenter.m in Sources */,
238B37B62AC55A2C00BFC9D5 /* XPTreasureFairyShopingRecordCell.m in Sources */,
23FF25762ABD66B90064E904 /* XPFreeGiftsObtainView.m in Sources */,
@@ -11132,6 +11281,7 @@
E82109B026F1D83500FC3319 /* LoginBindPhonePresent.m in Sources */,
E81C1B1F27705F7A0020D1E4 /* XPArrangeMicViewController.m in Sources */,
E8B825C726EA0D9A009E8E9F /* LoginVerifCodeProtocol.h in Sources */,
234E50A52BF5E556005CB6D5 /* MessageContentChatHallHeadView.m in Sources */,
23E9EAAE2A84C9B800B792F2 /* XPMineUserInfoTagView.m in Sources */,
236B2E4E2AA07D06003967A8 /* Api+LittleGame.m in Sources */,
237700E02BC7D78600D661F1 /* MSBaseRTLFlowLayout.m in Sources */,
@@ -11140,6 +11290,7 @@
9BAC92F528E6E63000147DD8 /* XPRoomInsideOperationCell.m in Sources */,
9BE570BC28F65B7200D491A5 /* XPMineCollectRoomCell.m in Sources */,
E86A16C22856D635004228B8 /* XPSessionFindNewGreetTableViewCell.m in Sources */,
235714742BEC6E3D004C81D6 /* MSSessionReleaseHeadlinesView.m in Sources */,
E824544E26F5BC1A00BE8163 /* XPMineModifPayPwdView.m in Sources */,
E86E79CD28A4E045006DAF48 /* MessageContentRiskAlertView.m in Sources */,
E855515B280559FE005F293F /* NSDate+DateUtils.m in Sources */,
@@ -11149,6 +11300,7 @@
E81DCCCD282B63B40039E5C5 /* XPMonentsViewController.m in Sources */,
237700FD2BCD254000D661F1 /* MSBaseTextField.m in Sources */,
237700E62BC7E81F00D661F1 /* UITextField+MSRTL.m in Sources */,
2357149E2BEF0F6D004C81D6 /* MSSessionScrollingItemCell.m in Sources */,
E86507EB281A88A9006951B0 /* MessageContentSkillCardView.m in Sources */,
E8B825CA26EA1231009E8E9F /* LoginVerifCodeViewController.m in Sources */,
189DD76226E60DDC00AB55B1 /* Api+Login.m in Sources */,
@@ -11231,7 +11383,6 @@
F1D8556F2931FC86008C418F /* XPRoomYearActivityView.m in Sources */,
238B37C72AC55A2C00BFC9D5 /* XPTreasureFairyPrizeRecordView.m in Sources */,
E8B9843628ABA8B40022D026 /* XPMonentPublishSuccessView.m in Sources */,
E87DF4E02A42CA92009C1185 /* XPHomeSloganViewController.m in Sources */,
238ED83A2AE2891D0014EF9D /* PIRoomEnterRedPacketView.m in Sources */,
23E9E9972A80C3A100B792F2 /* XPMineGuildPersonalBillRecordVC.m in Sources */,
E81C279626EB39CC0031E639 /* LoginForgetPasswordPresent.m in Sources */,
@@ -11342,6 +11493,7 @@
238B37B22AC55A2C00BFC9D5 /* XPTreasureFairyPrizePoolCell.m in Sources */,
9BE01AF02893E31700B50299 /* NewUserRechargeModel.m in Sources */,
E82325E6274CCAFA003A3332 /* XPShareInfoModel.m in Sources */,
2320F6392BDF732C00227EEB /* MSRoomMenuGameView.m in Sources */,
9B32A04728881845002009D2 /* XPRoomTagListView.m in Sources */,
E85E7B1D2A4EB0D200B6D00A /* XPMineClanIncomeStatisViewController.m in Sources */,
189DD55A26DE39D200AB55B1 /* BaseMvpPresenter.m in Sources */,
@@ -11459,6 +11611,7 @@
E85E7B472A4EB0D300B6D00A /* XPMineGuildManagerPerTableViewCell.m in Sources */,
E824544326F58FCE00BE8163 /* XPMinePayPwdInputView.m in Sources */,
23C7C0B72A7CD7B000802205 /* XPNewMineGuildItemView.m in Sources */,
23A7FB692BDDEDFA00411860 /* MSRoomGameWebVC.m in Sources */,
23CEFC5D2AFB8FC100576D89 /* BSRecordModel.m in Sources */,
9B1B72A1280023F3003FACE9 /* XPMineAnchorFansTeamTableViewCell.m in Sources */,
1808073027315E8E001FD836 /* NetImageView.m in Sources */,
@@ -11489,6 +11642,7 @@
237700FA2BCCD25500D661F1 /* YYLabel+MSRTL.m in Sources */,
E84BF7DD277C765400EF8877 /* XPRoomRoleEmptyTableViewCell.m in Sources */,
E8F6135C291E26BD00E12650 /* NSMutableDictionary+Saft.m in Sources */,
239D0F992BFB43BC002977CE /* MSRoomOnLineAvatarView.m in Sources */,
1427213429A75A2600C7C423 /* XPMonentsLatestPresenter.m in Sources */,
E83ABEFD280EB5E200322EE4 /* ContentOpenLiveInfoModel.m in Sources */,
E85E7BAF2A4EC99300B6D00A /* XPMineChooseGiveDiamondVC.m in Sources */,
@@ -11500,7 +11654,6 @@
14B880E7299A4B62005FCA1B /* XPLoginPhoneViewController.m in Sources */,
E824544626F5934700BE8163 /* XPMinePayPwdPresenter.m in Sources */,
189DD54B26DE338800AB55B1 /* BaseViewController.m in Sources */,
149839C4299E088000F82CBF /* XPMomentListViewController.m in Sources */,
E8B846C226FD82DC00A777FE /* XPMineUserInfoAlbumCollectionViewCell.m in Sources */,
233423CD2AAEE98200B1253F /* XPCandyTreeConfirmBuyNumView.m in Sources */,
2331C1AD2A60F32D00E1D940 /* XPCandyTreeAnimationModel.m in Sources */,
@@ -11559,6 +11712,8 @@
E85E7B372A4EB0D300B6D00A /* XPMineGuildListCell.m in Sources */,
E85E7B502A4EB0D300B6D00A /* XPMineGuildListVC.m in Sources */,
E824546126F5F4E400BE8163 /* XPMineResetPayPwdViewController.m in Sources */,
235714772BEC9E5E004C81D6 /* MSSessionContextHeadlinesView.m in Sources */,
2357146B2BEA0110004C81D6 /* MSSessionPublicChatHallTopModel.m in Sources */,
E81D58822720082A003063FE /* MicroWaveView.m in Sources */,
E8A73F8728586A6F00FD9CBC /* XPGiftWeekStarCollectionViewCell.m in Sources */,
E80E09B62A42078F00CD2BE7 /* XPRoomStarKitchenModel.m in Sources */,
@@ -11642,6 +11797,7 @@
236B2E592AA18E13003967A8 /* XPMIneGameCollectionViewCell.m in Sources */,
9BDA3E7D27FD47AB00517FE6 /* XPAnchorFansTeamPresenter.m in Sources */,
E8C6FFE62754FE53004DC9F0 /* XPHomeSearchPresenter.m in Sources */,
2320F6422BE0F53F00227EEB /* MSRoomMenuGameEmptyCell.m in Sources */,
238B37C02AC55A2C00BFC9D5 /* XPTreasureFairyPoolRecordView.m in Sources */,
9B2A12DE2783FEDD00CED41B /* UserVipInfoVo.m in Sources */,
233423CA2AAEE97500B1253F /* XPCandyTreeConfirmBuyView.m in Sources */,
@@ -11705,6 +11861,7 @@
E8098CAE282E07C00090B9F0 /* XPMonentsEmptyTableViewCell.m in Sources */,
237700D72BC7D51400D661F1 /* UIButton+MSRTL.m in Sources */,
E85E7B4F2A4EB0D300B6D00A /* XPMineExchangeAuthorityVC.m in Sources */,
235714952BEDF517004C81D6 /* MsRoomMessagChatHallView.m in Sources */,
23FE47DB2BB4171C00F09D23 /* PINobleCenterListView.m in Sources */,
E84A2E932A527EC800D6AF8A /* XPIncomeRecordPresent.m in Sources */,
236B2E432AA07D06003967A8 /* NSString+RW.m in Sources */,
@@ -11719,6 +11876,7 @@
E8778AF82988F4E200CF139B /* XPSessionSayHelloHeaderView.m in Sources */,
E84150C527747E0900A7F548 /* FirstRechargeRewardModel.m in Sources */,
E8B9843328ABA2FF0022D026 /* MonentsPicResInfo.m in Sources */,
235714982BEDF54E004C81D6 /* MsRoomMessageMainView.m in Sources */,
9BE9F10227FEE5C200667200 /* XPAnchorFansTaskDetailModel.m in Sources */,
E8E0DAE6285C280E00566A2F /* XPSessionFindNewAlertView.m in Sources */,
E85E7B1A2A4EB0D200B6D00A /* XPMineGoldIncomeRecordVC.m in Sources */,
@@ -11763,6 +11921,7 @@
23FF256E2ABC48810064E904 /* XPSessionMainViewController.m in Sources */,
E85E7B092A4EB0D200B6D00A /* XPGuildRemoveMemberPresenter.m in Sources */,
E8950186282CAC80007E459A /* XPMonentsTooBarView.m in Sources */,
2357145A2BE8BC6C004C81D6 /* MSSessionPublicChatHallVC.m in Sources */,
E86507E5281A7D4D006951B0 /* MessageContentTweetView.m in Sources */,
E824544B26F5BBB800BE8163 /* XPMineModifPayPwdViewController.m in Sources */,
E81C1B2227705F950020D1E4 /* Api+ArrangeMic.m in Sources */,
@@ -11787,11 +11946,12 @@
E86F6185284F4E4800E8EC9A /* RoomHalfHourRankModel.m in Sources */,
9B208A362779B50100F9E54A /* GiftNobleInfoModel.m in Sources */,
E80A086227F2AC190027B30C /* RoomPKDetailInfoModel.m in Sources */,
2357146E2BEB816B004C81D6 /* MSSessionPublicChatHallHeadView.m in Sources */,
238B37CD2AC55A2C00BFC9D5 /* XPTreasureFailyResultView.m in Sources */,
E824545126F5CE6E00BE8163 /* XPMineModifPayPwdPresenter.m in Sources */,
1464C5ED29A4784F00AF7C94 /* XPMineSimpleUserInfoViewController.m in Sources */,
E8098CB1282E86EF0090B9F0 /* XPMonentsContentView.m in Sources */,
E85E3FA728B7A6F000268DC8 /* MessageContentMonentsView.m in Sources */,
234E50A82BF5EBDD005CB6D5 /* MSSessionPublicChatHalRightTextCell.m in Sources */,
E880B3AF278BE1D800A83B0D /* Api+AcrossRoomPK.m in Sources */,
238B37DC2AC55A2C00BFC9D5 /* XPTreasureFairyBallView.m in Sources */,
23CEFC4B2AFB8FC100576D89 /* BSUIDemoUtil.m in Sources */,
@@ -11829,6 +11989,7 @@
E81060EE2987C35700B772F0 /* MessageTextClickModel.m in Sources */,
E87AE8C5284E1A8400CAFBB3 /* XPRoomNewUserGreetView.m in Sources */,
E8A3540728FEBD460014A784 /* XPWishGiftCreateItemViewController.m in Sources */,
235714802BECB217004C81D6 /* MSSessionReleaseHeadlinesPayView.m in Sources */,
E87E627B2A3F5A0D002F68C9 /* XPNewHomeRecommendPresenter.m in Sources */,
14DCAD08299B36A500A7DD31 /* XPLoginPwdViewController.m in Sources */,
E81060F42987C6B200B772F0 /* MessageOpenLiveModel.m in Sources */,
@@ -11853,6 +12014,7 @@
1808072D2731598F001FD836 /* XPNetImageYYLabel.m in Sources */,
E818E348286ECA4B005EDF68 /* XPMonentsPublishViewController.m in Sources */,
9B88E20C28C5EB8300D26FBA /* MessageContentRedPacketView.m in Sources */,
234E50AB2BF5F95A005CB6D5 /* MSSessionPublicChatHalIRightmageCell.m in Sources */,
E896EFAF2771AF0F00AD2CC1 /* XPMineFriendEmptyTableViewCell.m in Sources */,
E8E859E928264F4500EE4857 /* XPRoomTransferMusicViewController.m in Sources */,
18486213271EA9DA005FC5DC /* RtcManager.m in Sources */,
@@ -11864,6 +12026,7 @@
23CEFC5F2AFB8FC100576D89 /* BSLogTableViewController.m in Sources */,
236B2E4D2AA07D06003967A8 /* XPRoomLittleGameContainerView.m in Sources */,
E87AE8C1284E184300CAFBB3 /* RoomNewUserGreetModel.m in Sources */,
235714602BE8BD5C004C81D6 /* MSSessionScrollingModel.m in Sources */,
9BC5C91C277C8A7B007C8719 /* XPReleaseRadioViewController.m in Sources */,
23B2AEC42A6516C200543D17 /* LoginForgetPasswordViewController.m in Sources */,
186A534C26FC6ED900D67B2C /* TTAlertView.m in Sources */,
@@ -11902,12 +12065,14 @@
E878894C273A607C00BF1D57 /* XPGiftUserCollectionViewCell.m in Sources */,
23E9E9A72A80F1C300B792F2 /* XPNewMineHallIncomeVC.m in Sources */,
2331C1712A5EB71000E1D940 /* XPNobleCenterTableHeadView.m in Sources */,
2357148C2BECEE33004C81D6 /* MSSessionPublicChatHalTextCell.m in Sources */,
181D7F212727D9DB00B7C059 /* SocialStageView.m in Sources */,
E8AB630D28ADD8C60023B0D2 /* XPMonentTopicContainerViewController.m in Sources */,
23E9EA7C2A83977400B792F2 /* MessageContentTreasureFairyView.m in Sources */,
E8D4DE472940473500EC788D /* GiftTwelveStarFirstModel.m in Sources */,
E87DF4FB2A42CCDE009C1185 /* XPHomeRedommendCollectionViewCell.m in Sources */,
2368ECDA2BC3C02800EDF4C9 /* XPMineSwitchLanguageVC.m in Sources */,
235714712BEB97BD004C81D6 /* MSSessionScrollingItemView.m in Sources */,
187EEEF026E89FE8002833B2 /* AccountInfoStorage.m in Sources */,
2331C1B82A60F32D00E1D940 /* XPRoomHalfWebView.m in Sources */,
9BFE0D8E2898C8C300F53C24 /* XPAnchorCardSkillCollectionViewCell.m in Sources */,
@@ -11988,6 +12153,7 @@
238B37B02AC55A2C00BFC9D5 /* XPTreasureFairyStoreResultCell.m in Sources */,
E8AEAEED27141AE20017FCE0 /* XPRoomBackContainerView.m in Sources */,
E88B5CC126FB407B00DA9178 /* XPMineUserInfoViewController.m in Sources */,
235714672BE8C009004C81D6 /* MSSessionScrollingView.m in Sources */,
2331C1AC2A60F32D00E1D940 /* CandyTreeRecordModel.m in Sources */,
E81E09CF290F750800A1F410 /* AdvertiseModel.m in Sources */,
2305F3472AD94E9D00AD403C /* XPMaskManagerCell.m in Sources */,
@@ -11997,6 +12163,7 @@
E8C1CD7627D8AE3D00376F83 /* XPRoomFacePresenter.m in Sources */,
E85E7B362A4EB0D300B6D00A /* XPClanRoomCollectionViewCell.m in Sources */,
18F4043A275E20D900A6C548 /* TRTCRtcImpl.m in Sources */,
2320F63F2BDF8B3000227EEB /* MSRoomMenuGameVC.m in Sources */,
E8899C7F27853B6A007944BE /* DatingMicroView.m in Sources */,
23E9EA882A84B75900B792F2 /* XPMineUserInfoHeaderTagView.m in Sources */,
E87DF4EC2A42CB60009C1185 /* XPSearchListTableViewCell.m in Sources */,
@@ -12099,11 +12266,13 @@
E884C36C2743951B00E1EBED /* GiftReceiveInfoModel.m in Sources */,
E85E7BB62A4ED59900B6D00A /* XPIncomeRecordGoldDetailsCell.m in Sources */,
9B7B606227BB96E40070BB72 /* XPRoomAnchorInfoCardView.m in Sources */,
2357147A2BECA102004C81D6 /* MessageHeadlinesModel.m in Sources */,
E87DF4FE2A42CD7E009C1185 /* XPRoomSearchRecommendHeadView.m in Sources */,
23CEFC4D2AFB8FC100576D89 /* BSXWDateUtil.m in Sources */,
E85E7B442A4EB0D300B6D00A /* XPMineExchangeAuthorityCell.m in Sources */,
E80B0734280D740600A79F63 /* MessageContentGuildView.m in Sources */,
E8395334276A03C300CF2F24 /* XPMineDressUpPresenter.m in Sources */,
2357148F2BEDC94D004C81D6 /* MSSessionPublicChatHalImageCell.m in Sources */,
E85E7B212A4EB0D300B6D00A /* XPNewMineGuildIncomeRecordViewController.m in Sources */,
23A439742AA1CF7C002E6039 /* XPNewHomeHeadView.m in Sources */,
189DD75926E6003C00AB55B1 /* Api.m in Sources */,
@@ -12123,6 +12292,7 @@
E833ED0D274FAD1C00A2463B /* XPKickUserModel.m in Sources */,
9B42868E28C1AE2D009034D2 /* XPReceiveRedPacketView.m in Sources */,
E8788934273A53D700BF1D57 /* XPSendGiftView.m in Sources */,
234E50AF2BF7352C005CB6D5 /* NSTextAttachment+MSImage.m in Sources */,
E896EF9C2771AE6B00AD2CC1 /* XPMineFansViewController.m in Sources */,
238B37A72AC55A2C00BFC9D5 /* TreasureFairyRewardModel.m in Sources */,
E84B0E462727EF9D008818C6 /* XPRoomMessageParser.m in Sources */,
@@ -12141,6 +12311,7 @@
189DD53F26DE255600AB55B1 /* main.m in Sources */,
236B2E4A2AA07D06003967A8 /* XPLittleGameTableViewCell.m in Sources */,
E85E7BBC2A4EE70B00B6D00A /* XPMineTheGuildCell.m in Sources */,
239D0F962BFB3296002977CE /* MSRoomOnLineView.m in Sources */,
E885D5392977D10E004DC088 /* SessionSettingUserView.m in Sources */,
2305EF072AD6B51200AD403C /* PIRoomPhotoAlbumChoosePhotoGiftView.m in Sources */,
2331C16C2A5EB71000E1D940 /* XPNobleCenterEmptyView.m in Sources */,
@@ -12161,7 +12332,6 @@
E87E91522796A15500A7B3F2 /* MicroExtModel.m in Sources */,
E8788948273A55D000BF1D57 /* XPGiftBarView.m in Sources */,
E89DCF5728FFF076001647EC /* XPWishGiftEmptyTableViewCell.m in Sources */,
14A6034929A3567200D2A6A5 /* XPSimpleMineViewController.m in Sources */,
237700D32BC7CC7C00D661F1 /* NSObject+MJExtension.m in Sources */,
E8D4DE442940462C00EC788D /* XPGiftTwelveStarBroadcastView.m in Sources */,
E81060DF29876D3A00B772F0 /* MessageTimeModel.m in Sources */,
@@ -12193,7 +12363,9 @@
149839C7299E0B9F00F82CBF /* XPMomentListCollectionViewCell.m in Sources */,
236BA4982BB6AFED00C7C73A /* PINoblePrivilegeEmptyCell.m in Sources */,
E88C729C2828F37D0047FB2B /* XPRoomMusicLibraryEmptyTableViewCell.m in Sources */,
235714A12BEF510B004C81D6 /* MSSessionScrollingItemFlowLayout.m in Sources */,
E85E7B0A2A4EB0D200B6D00A /* XPGuildManagerPerPresenter.m in Sources */,
235714922BEDC9B1004C81D6 /* MSSessionPublicChatHalImageModel.m in Sources */,
9B85F3562806DD8A006EDF51 /* XPAnchorPKFinishView.m in Sources */,
238B37D72AC55A2C00BFC9D5 /* XPTreasureFairyTrialsBallView.m in Sources */,
E85E7BA12A4EC99300B6D00A /* XPMineGiveDiamondModel.m in Sources */,
@@ -12390,7 +12562,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 20.20.18;
MARKETING_VERSION = 20.20.20;
PRODUCT_BUNDLE_IDENTIFIER = com.peko.enterprise.ios;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";
@@ -12428,7 +12600,7 @@
"$(inherited)",
"@executable_path/Frameworks",
);
MARKETING_VERSION = 20.20.18;
MARKETING_VERSION = 20.20.20;
PRODUCT_BUNDLE_IDENTIFIER = com.peko.enterprise.ios;
PRODUCT_NAME = "$(TARGET_NAME)";
PROVISIONING_PROFILE_SPECIFIER = "";

View File

@@ -234,9 +234,6 @@ UIKIT_EXTERN NSString * adImageName;
/// 广
- (void)advertiseJumpHandleWithInfo:(AdvertiseModel *)info {
if (![ClientConfig shareConfig].canOpen) {
return;
}
if (UIApplication.sharedApplication.keyWindow != self.window) {
//
return;

View File

@@ -63,7 +63,7 @@ UIKIT_EXTERN NSString * const kOpenRoomNotification;
[[FBSDKApplicationDelegate sharedInstance] application:application didFinishLaunchingWithOptions:launchOptions];
[FIRApp configure];
[MobLink setDelegate:self];
return YES;
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 136 KiB

After

Width:  |  Height:  |  Size: 122 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.2 KiB

After

Width:  |  Height:  |  Size: 973 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -5,12 +5,12 @@
"scale" : "1x"
},
{
"filename" : "mine_noble_center_tag_title_bg@2x.png",
"filename" : "ms_message_headlines_text_left@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "mine_noble_center_tag_title_bg@3x.png",
"filename" : "ms_message_headlines_text_left@3x.png",
"idiom" : "universal",
"scale" : "3x"
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 450 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 705 B

View File

@@ -5,12 +5,12 @@
"scale" : "1x"
},
{
"filename" : "mine_noble_center_tag_title_bg_en@2x.png",
"filename" : "ms_message_headlines_text_right@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "mine_noble_center_tag_title_bg_en@3x.png",
"filename" : "ms_message_headlines_text_right@3x.png",
"idiom" : "universal",
"scale" : "3x"
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 461 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 741 B

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_message_send_headline_bnt@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_message_send_headline_bnt@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_message_send_headline_bnt_ar@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_message_send_headline_bnt_ar@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_message_send_headline_bnt_en@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_message_send_headline_bnt_en@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 20 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_public_chat_hall_add_icon@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_public_chat_hall_add_icon@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 553 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 960 B

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_public_chat_hall_head_bg@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_public_chat_hall_head_bg@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 59 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 111 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_public_chat_hall_head_broadcast_bg@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_public_chat_hall_head_broadcast_bg@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 109 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_public_chat_hall_head_enter_bg@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_public_chat_hall_head_enter_bg@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 55 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 110 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_room_message_send_headline_icon@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_room_message_send_headline_icon@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.5 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_room_message_send_headline_icon_ar@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_room_message_send_headline_icon_ar@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.2 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.4 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_room_message_send_headline_icon_en@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_room_message_send_headline_icon_en@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 8.6 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_headlines_pay_icon@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_headlines_pay_icon@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 543 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 908 B

Binary file not shown.

Before

Width:  |  Height:  |  Size: 4.3 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 9.5 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_room_bottom_game_icon@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_room_bottom_game_icon@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.2 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_room_menu_game@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_room_menu_game@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.9 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_room_onLine_icon@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_room_onLine_icon@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 412 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 579 B

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "ms_room_online_border@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "ms_room_online_border@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

View File

@@ -0,0 +1,22 @@
{
"images" : [
{
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "room_rank_iocn@2x.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "room_rank_iocn@3x.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

View File

@@ -22,7 +22,7 @@ NS_ASSUME_NONNULL_BEGIN
@property (nonatomic,strong) ClientDataModel *configInfo;
///开箱子 大于等级 展示
@property (nonatomic, assign) NSInteger openCandyTreeLimitLevel;
@property (nonatomic,assign) BOOL canOpen;
@property(nonatomic,assign) BOOL isTF;
///是否刷新了
@property (nonatomic,assign) BOOL isLoad;

View File

@@ -44,9 +44,9 @@
return isTestFlight;
}
- (void)clientInit {
self.canOpen = YES;
@kWeakify(self);
[Api clientInitConfig:^(BaseModel * _Nullable data, NSInteger code, NSString * _Nullable msg) {
@kStrongify(self);
if (code == 200) {
self.retryCount = 0;
NSDictionary * initData = data.data;
@@ -92,6 +92,7 @@
model.appStoreAuditNoticeVersion = isHigh;
self.configInfo = model;
[[NSNotificationCenter defaultCenter] postNotificationName:@"reloadnewtab" object:nil];
} else {
if (self.retryCount < 10) {
[self clientInit];

View File

@@ -39,6 +39,7 @@ typedef NS_ENUM(NSInteger, FaceLivenessStrategy) {
@property (nonatomic, strong) NSArray<NSString *> *officialMsgUids;
///官方账号 小秘书 红包消息
@property (nonatomic,strong) NSArray<NSString *> *officialAccountUids;
@property(nonatomic,copy) NSDictionary *publicChatRoomIdMap;
///星座礼物顶部是否开启
@property (nonatomic,assign) BOOL twelveStarSwitch;
/// 开房是否需要实名

View File

@@ -16,4 +16,5 @@
}
}
@end

View File

@@ -82,7 +82,7 @@
}
- (NSString *)normalText {
NSMutableString *normalMutableString = self.attributedText.string.mutableCopy;
NSMutableString *normalMutableString = [[NSMutableString alloc]initWithString:[self getResutlText]];
CGSize maxSize = CGSizeMake(50, MAXFLOAT);
YYTextLayout * layout = [YYTextLayout layoutWithContainerSize:maxSize text:self.attributedText];
for (int i = 0; i< layout.attachments.count; i++) {
@@ -96,5 +96,24 @@
}
return normalMutableString;
}
-(NSString *)getResutlText{
if (self.attributedText.length <= 0) {
return @"";
}
NSMutableAttributedString *resutlAtt = [[NSMutableAttributedString alloc] initWithAttributedString:self.attributedText ];
//
__block NSUInteger base = 0;
[self.attributedText enumerateAttributesInRange:NSMakeRange(0, self.attributedText.length) options:NSAttributedStringEnumerationLongestEffectiveRangeNotRequired usingBlock:^(NSDictionary<NSAttributedStringKey,id> * _Nonnull attrs, NSRange range, BOOL * _Nonnull stop) {
NSTextAttachment *textAtt = attrs[@"NSAttachment"];
//
NSInteger length = range.location + base + range.length;
if (textAtt && length <= resutlAtt.length) {
[resutlAtt replaceCharactersInRange:NSMakeRange(range.location + base, range.length)
withString:textAtt.imageName];
base += textAtt.imageName.length - 1;
}
}];
return resutlAtt.string;
}
@end

View File

@@ -30,6 +30,7 @@ BOOL isRTLString(NSString *string) {
}
-(void)msrtl_setAttributedText:(NSAttributedString *)attributedText{
if(attributedText == nil)return;
NSMutableAttributedString * attributedString = [[NSMutableAttributedString alloc]init];
if(self.textAlignment == NSTextAlignmentCenter){
if (isMSRTL()) {
@@ -46,6 +47,7 @@ BOOL isRTLString(NSString *string) {
[attributedString appendAttributedString:[NSMutableAttributedString createBlankAttributeToMSRTL]];
// [attributedString appendAttributedString:[NSMutableAttributedString createBlankAttributeToMSLTR]];
}
[attributedString appendAttributedString:attributedText];
[self msrtl_setAttributedText:attributedString];
if(isMSRTL()){

View File

@@ -12,6 +12,7 @@
@class XPShareView;
@protocol XCShareViewDelegate <NSObject>
@optional
///点击保存图片到相册
- (void)shareView:(XPShareView *)shareView savePhoto:(XPShareInfoModel *)shareInfo;
///点了取消分享

View File

@@ -40,24 +40,14 @@
#pragma mark - Life Style
- (instancetype)initWithItems:(NSArray<XPShareItem *> *)items itemSize:(CGSize)itemSize shareInfo:(XPShareInfoModel *)shareInfo {
if (self = [super init]) {
NSMutableArray *itemList = [NSMutableArray array];
for (XPShareItem * item in items) {
if (item.type == XPShareItemTagAppFriends || item.type == XPShareItemTagCopyLink) {
item.disable = YES;
} else {
item.disable = [self isInstallClient:[self getSharePlatformType:item.type]];
}
if(item.disable == YES){
[itemList addObject:item];
}
}
if([ClientConfig shareConfig].canOpen){
self.items = [NSMutableArray arrayWithArray:items];
}else{
self.items = itemList;
}
self.items = [NSMutableArray arrayWithArray:items];
self.itemSize =itemSize;
self.shareInfo = shareInfo;
[self initSubViews];

View File

@@ -66,7 +66,7 @@ NSString * const KeyWithType(Pi_KeyType type) {
@(KeyType_PasswordEncode) : @"1ea53d260ecf11e7b56e00163e046a26",
@(KeyType_Agora) : @"f8713b6ec98c4c01adaf34cb4fa091b1",
@(KeyType_TRTC) : @"1400741885",
@(KeyType_NetEase) : @"1c3b8c6bf8467d8e4c33a004dbec5c94",
@(KeyType_NetEase) : @"79bc37000f4018a2a24ea9dc6ca08d32",
@(keyType_YiDunBussinessId) : @"yinyouApnsDebug",
@(KeyType_FacePwdEncode) : @"1ea53d260ecf11e7b56e00163e046a26",
@(KeyType_SudGameAppID) : @"1578948593831571457",

View File

@@ -49,11 +49,11 @@ isPhoneXSeries = [[UIApplication sharedApplication] delegate].window.safeAreaIns
///内置版本号
#define PI_App_Version @"1.0.3"
#define PI_App_Version @"1.0.6"
///渠道
#define PI_App_Source @"appstore"
#define PI_Test_Flight @"TestFlight"
#define ISTestFlight 0
///正式环境
#define API_HOST_URL @"https://api.hfighting.com"
//#define API_HOST_URL @"https://api.molistar.xyz"

View File

@@ -36,7 +36,7 @@
//
NSData *data = [[NSData alloc] initWithContentsOfFile:path];
// JSON
NSDictionary *codeData = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
NSDictionary *codeData = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableLeaves error:nil];
NSArray *codeList = [LoginAreaModel modelsWithArray:codeData[@"RECORDS"]];
[self getLocalPlistWithList:codeList];
}

View File

@@ -14,6 +14,14 @@ NS_ASSUME_NONNULL_BEGIN
+ (void)getChatLimit:(HttpRequestHelperCompletion)complection receiverUid:(NSString *)receiverUid ;
///获取私聊限制接口
+(void)getPrivateChatCheck:(HttpRequestHelperCompletion)complection content:(NSString *)content toUid:(NSString *)toUid;
///聊天室发送头条
+(void)sendPublicChatHallTopText:(HttpRequestHelperCompletion)complection content:(NSString *)content;
///获取聊天室头条
+(void)getPublicChatHallTopText:(HttpRequestHelperCompletion)complection;
///获取聊天室数据
+(void)getPublicChatHallList:(HttpRequestHelperCompletion)complection;
///获取支付金额;
+(void)getPublicChatHallTopTextPayMoney:(HttpRequestHelperCompletion)complection;
@end
NS_ASSUME_NONNULL_END

View File

@@ -17,4 +17,20 @@
+(void)getPrivateChatCheck:(HttpRequestHelperCompletion)complection content:(NSString *)content toUid:(NSString *)toUid{
[self makeRequest:@"privateChat/check" method:HttpRequestHelperMethodGET completion:complection, __FUNCTION__, content,toUid,nil];
}
///
+(void)sendPublicChatHallTopText:(HttpRequestHelperCompletion)complection content:(NSString *)content{
[self makeRequest:@"publicChatTopRecord/send" method:HttpRequestHelperMethodPOST completion:complection, __FUNCTION__, content,nil];
}
///
+(void)getPublicChatHallTopText:(HttpRequestHelperCompletion)complection{
[self makeRequest:@"publicChatTopRecord/getTop" method:HttpRequestHelperMethodGET completion:complection, __FUNCTION__, nil];
}
///
+(void)getPublicChatHallList:(HttpRequestHelperCompletion)complection{
[self makeRequest:@"publicChatTopRecord/getChatForTop50" method:HttpRequestHelperMethodGET completion:complection, __FUNCTION__, nil];
}
///
+(void)getPublicChatHallTopTextPayMoney:(HttpRequestHelperCompletion)complection{
[self makeRequest:@"/publicChatTopRecord/payMoney" method:HttpRequestHelperMethodGET completion:complection, __FUNCTION__, nil];
}
@end

View File

@@ -120,6 +120,8 @@ typedef NS_ENUM(NSUInteger, CustomMessageType) {
CustomMessageType_Super_Gift = 106,
///通用飘屏
CustomMessageType_General_Floating_Screen = 107,
///聊天大厅上头条
CustomMessageType_Chat_Hall_Headlinesn = 108,
};
@@ -653,6 +655,13 @@ typedef NS_ENUM(NSUInteger, CustomMessageTypeGeneralFloatingScreen) {
Custom_Message_Sub_General_Floating_Screen_One_Room = 1071,//单房间
Custom_Message_Sub_General_Floating_Screen_All_Room = 1072,///全部房间
};
///聊天大厅上头条
//CustomMessageType_Chat_Hall_Headlinesn = 108,
typedef NS_ENUM(NSUInteger, CustomMessageTypeChatHallHeadlinesn) {
///所有房间
Custom_Message_Sub_Chat_Hall_Headlinesn = 1081,//单房间
};
@interface AttachmentModel : PIBaseModel<NIMCustomAttachment>
@property (nonatomic,assign) int first;
@property (nonatomic,assign) int second;

View File

@@ -0,0 +1,24 @@
//
// MSSessionPublicChatHallTopModel.h
// YuMi
//
// Created by duoban on 2024/5/7.
//
#import "PIBaseModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MSSessionPublicChatHallTopModel : PIBaseModel
@property(nonatomic,copy) NSString *uid;
@property(nonatomic,copy) NSString *content;
@property(nonatomic,assign) BOOL isTop;
@property(nonatomic,copy) NSString *partitionId;
@property(nonatomic,copy) NSString *nick;
@property(nonatomic,assign) NSInteger endTime;
@property(nonatomic,assign) NSInteger startTime;
//0 有效 1 过期
@property(nonatomic,assign) int recordStatus;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,12 @@
//
// MSSessionPublicChatHallTopModel.m
// YuMi
//
// Created by duoban on 2024/5/7.
//
#import "MSSessionPublicChatHallTopModel.h"
@implementation MSSessionPublicChatHallTopModel
@end

View File

@@ -0,0 +1,28 @@
//
// MSSessionScrollingModel.h
// YuMi
//
// Created by duoban on 2024/5/6.
//
#import "PIBaseModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MSSessionScrollingModel : PIBaseModel
@property (nonatomic,assign)NSTimeInterval beginTime;
@property (nonatomic,assign)NSTimeInterval endTime;
@property (nonatomic,copy)NSString *content;
@property (nonatomic,copy)NSString *fromAvatar;
@property(nonatomic,copy) NSString *fromNick;
@property(nonatomic,copy) NSString *fromUid;
@property (nonatomic,copy)NSString *gender;
@property(nonatomic,copy) NSString *partitionId;
@property (nonatomic,copy)NSString *toAvatar;
@property(nonatomic,copy) NSString *toNick;
@property(nonatomic,copy) NSString *toUid;
@property(nonatomic,assign) CGFloat width;
@property(nonatomic,strong) NSMutableAttributedString * attribute;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,15 @@
//
// MSSessionScrollingModel.m
// YuMi
//
// Created by duoban on 2024/5/6.
//
#import "MSSessionScrollingModel.h"
@implementation MSSessionScrollingModel
-(void)setContent:(NSString *)content{
_content = content;
_width = [UILabel getWidthWithText:_content height:kGetScaleWidth(11.5) font:kFontMedium(12)] + 5;
}
@end

View File

@@ -6,7 +6,7 @@
//
#import "BaseMvpPresenter.h"
#import "UserInfoModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MessagePresenter : BaseMvpPresenter
@@ -24,7 +24,18 @@ NS_ASSUME_NONNULL_BEGIN
// 获取用户信息
- (void)getUserInfoWithUid:(NSString *)uid;
///进入聊天室
- (void)enterNIMRoom:(NSString *)roomId user:(UserInfoModel *)userInfo;
///退出聊天室
- (void)exitNIMRoom:(NSString *)roomId;
///聊天室发送头条
-(void)sendPublicChatHallTopTextWithcontent:(NSString *)content;
///获取聊天室发送头条
-(void)getPublicChatHallTopText;
///获取聊天室数据
-(void)getPublicChatHallList;
///获取支付金额;
-(void)getPublicChatHallTopTextPayMoney;
@end
NS_ASSUME_NONNULL_END

View File

@@ -13,6 +13,9 @@
#import "UserInfoModel.h"
#import "AccountInfoStorage.h"
#import "NIMMessageUtils.h"
#import "XPMessageRemoteExtModel.h"
#import "MSSessionScrollingModel.h"
#import "MSSessionPublicChatHallTopModel.h"
@implementation MessagePresenter
@@ -61,5 +64,73 @@
[[self getView] attentionUserSuccess:targetUid];
} showLoading:YES] uid:uid likedUid:targetUid ticket:ticket type:type];
}
- (void)enterNIMRoom:(NSString *)roomId user:(UserInfoModel *)userInfo {
NIMChatroomEnterRequest *request = [[NIMChatroomEnterRequest alloc] init];
request.roomId = roomId;
//ext
XPMessageRemoteExtModel * extModel = [[XPMessageRemoteExtModel alloc] init];
extModel.defUser = userInfo.defUser;
extModel.erbanNo = userInfo.erbanNo;
extModel.carName = userInfo.carName;
extModel.inRoomNameplatePic = userInfo.nameplatePic;
extModel.inRoomNameplateWord = userInfo.nameplateWord;
extModel.isCustomWord = userInfo.isCustomWord;
extModel.charmUrl = userInfo.userLevelVo.charmUrl;
extModel.experLevelSeq = userInfo.userLevelVo.experLevelSeq;
extModel.experUrl = userInfo.userLevelVo.experUrl;
extModel.newUser = userInfo.newUser;
extModel.vipIcon = userInfo.userVipInfoVO.vipIcon;
extModel.fromUid = userInfo.fromUid;
extModel.fromType = userInfo.fromType;
extModel.fromNick = userInfo.fromNick;
extModel.iosBubbleUrl = userInfo.iosBubbleUrl;
extModel.androidBubbleUrl = userInfo.androidBubbleUrl;
extModel.enterHide = userInfo.userVipInfoVO.enterHide;
extModel.preventKick = userInfo.userVipInfoVO.preventKick;
extModel.enterRoomEffects = userInfo.userVipInfoVO.enterRoomEffects;
extModel.gender = userInfo.gender;
extModel.fromSayHelloChannel = userInfo.fromSayHelloChannel;
extModel.platformRole = userInfo.platformRole;
NSMutableDictionary *ext = [NSMutableDictionary dictionaryWithObject:extModel.model2dictionary forKey:[NSString stringWithFormat:@"%ld", userInfo.uid]];
request.roomExt = [ext toJSONString];
[[NIMSDK sharedSDK].chatroomManager enterChatroom:request completion:^(NSError * _Nullable error, NIMChatroom * _Nullable chatroom, NIMChatroomMember * _Nullable me) {
if (error) {
[[self getView] enterPublicChatHallFail:error.code];
} else {
[[self getView] enterPublicChatHallSuccess:chatroom];
}
}];
}
- (void)exitNIMRoom:(NSString *)roomId {
[[NIMSDK sharedSDK].chatroomManager exitChatroom:roomId completion:nil];
}
///
-(void)sendPublicChatHallTopTextWithcontent:(NSString *)content{
[Api sendPublicChatHallTopText:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView]sendPublicChatHallTopTextSuccess];
} showLoading:YES errorToast:YES] content:content];
}
///
-(void)getPublicChatHallTopText{
[Api getPublicChatHallTopText:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
MSSessionPublicChatHallTopModel *model = [MSSessionPublicChatHallTopModel modelWithDictionary:data.data];
[[self getView]getPublicChatHallTopTextSuccess:model];
}]];
}
///
-(void)getPublicChatHallList{
[Api getPublicChatHallList:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
NSArray *list = [MSSessionScrollingModel modelsWithArray:data.data];
[[self getView]getPublicChatHallListSuccess:list];
}]];
}
///;
-(void)getPublicChatHallTopTextPayMoney{
[Api getPublicChatHallTopTextPayMoney:[self createHttpCompletion:^(BaseModel * _Nonnull data) {
[[self getView]getPublicChatHallTopTextPayMoneySuccess:[NSString stringWithFormat:@"%@",data.data]];
}]];
}
@end

View File

@@ -7,12 +7,12 @@
#import <Foundation/Foundation.h>
@class ChatLimitModel, UserInfoModel;
@class ChatLimitModel, UserInfoModel,NIMChatroom,MSSessionPublicChatHallTopModel,MSSessionScrollingModel;
NS_ASSUME_NONNULL_BEGIN
@protocol MessageProtocol <NSObject>
@optional
- (void)onGetLimitChat:(ChatLimitModel *)chatLimit;
///获取用户信息成功
@@ -24,6 +24,18 @@ NS_ASSUME_NONNULL_BEGIN
///获取用户信息
- (void)onGetUserInfoSuccess:(UserInfoModel *)userInfo;
///进入聊天室成功
-(void)enterPublicChatHallSuccess:(NIMChatroom *)chatRoom;
///进入聊天室失败
-(void)enterPublicChatHallFail:(NSInteger)code;
///发送聊天室头条成功
-(void)sendPublicChatHallTopTextSuccess;
///获取发送聊天室头条
-(void)getPublicChatHallTopTextSuccess:(MSSessionPublicChatHallTopModel *)model;
///获取聊天室数据
-(void)getPublicChatHallListSuccess:(NSArray<MSSessionScrollingModel *> *)list;
///获取支付金额;
-(void)getPublicChatHallTopTextPayMoneySuccess:(NSString *)money;
@end
NS_ASSUME_NONNULL_END

View File

@@ -22,7 +22,7 @@
#import "XPSessionFindNewFiltrateView.h"
#import "XPSessionFindNewGreetListView.h"
#import "XPMineUserInfoViewController.h"
#import "XPMineSimpleUserInfoViewController.h"
///P
#import "XPSessionFindNewProtocol.h"
#import "XPSessionFindNewPresenter.h"
@@ -170,15 +170,9 @@
- (void)xPSessionFindNewTableViewCell:(XPSessionFindNewTableViewCell *)cell didClickAvatar:(FindNewUserInfoModel *)userInfo {
if (userInfo.uid > 0) {
if ([ClientConfig shareConfig].canOpen) {
XPMineUserInfoViewController * userInfoVC = [[XPMineUserInfoViewController alloc] init];
userInfoVC.uid = userInfo.uid.integerValue;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:userInfoVC animated:YES];
}else{
XPMineSimpleUserInfoViewController * userInfoVC = [[XPMineSimpleUserInfoViewController alloc] init];
userInfoVC.uid = userInfo.uid.integerValue;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:userInfoVC animated:YES];
}
XPMineUserInfoViewController * userInfoVC = [[XPMineUserInfoViewController alloc] init];
userInfoVC.uid = userInfo.uid.integerValue;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:userInfoVC animated:YES];
}
}

View File

@@ -0,0 +1,16 @@
//
// MSSessionPublicChatHalIRightmageCell.h
// YuMi
//
// Created by duoban on 2024/5/16.
//
#import <UIKit/UIKit.h>
#import "MessageBaseModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MSSessionPublicChatHalIRightmageCell : UITableViewCell
- (void)render:(nonnull MessageBaseModel *)model ;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,185 @@
//
// MSSessionPublicChatHalIRightmageCell.m
// YuMi
//
// Created by duoban on 2024/5/16.
//
#import "MSSessionPublicChatHalIRightmageCell.h"
#import "DJDKMIMOMColor.h"
#import "NSObject+MJExtension.h"
#import "QEmotionHelper.h"
#import <NIMSDK/NIMSDK.h>
#import <Masonry/Masonry.h>
#import "SpriteSheetImageManager.h"
#import "MessageHeadlinesTextModel.h"
#import "XPMessageRemoteExtModel.h"
#import "MSSessionPublicChatHalImageCell.h"
#import "MSSessionPublicChatHalImageModel.h"
#import "SDPhotoBrowser.h"
#import "MessageContentChatHallHeadView.h"
@interface MSSessionPublicChatHalIRightmageCell()
@property(nonatomic,strong) MSSessionPublicChatHalImageModel * imageModel;
@property(nonatomic,strong) MessageContentChatHallHeadView *avatarView;
@property(nonatomic,strong) UIImageView *bgImageView;
///
@property (nonatomic,strong) NetImageView *bubbleImageView;
@property(nonatomic,strong) NetImageView *picImageView;
@end
@implementation MSSessionPublicChatHalIRightmageCell
-(instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if(self){
[self installUI];
[self installConstraints];
}
return self;
}
-(void)installUI{
self.contentView.backgroundColor = [UIColor clearColor];
self.backgroundColor = [UIColor clearColor];
self.selectionStyle = 0;
[self.contentView addSubview:self.avatarView];
[self.contentView addSubview:self.bgImageView];
[self.contentView addSubview:self.bubbleImageView];
[self.contentView addSubview:self.picImageView];
}
-(void)installConstraints{
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.trailing.trailing.top.equalTo(self.contentView);
make.height.mas_equalTo(kGetScaleWidth(48));
}];
[self.bgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.trailing.mas_equalTo(-kGetScaleWidth(72));
make.width.mas_equalTo(kGetScaleWidth(52));
make.height.mas_equalTo(kGetScaleWidth(36));
make.top.mas_equalTo(kGetScaleWidth(55));
}];
[self.bubbleImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.bgImageView);
}];
[self.picImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.bgImageView).with.insets(UIEdgeInsetsMake(kGetScaleWidth(10),kGetScaleWidth(10),kGetScaleWidth(10),kGetScaleWidth(10)));
}];
}
#pragma mark -
- (void)render:(nonnull MessageBaseModel *)model {
MSSessionPublicChatHalImageModel * imageModel = (MSSessionPublicChatHalImageModel *)model;
self.imageModel = imageModel;
XPMessageRemoteExtModel *extModel = imageModel.extModel;
if(extModel == nil)return;
[self.avatarView render:model];
[self.picImageView mas_updateConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(model.contentSize.height);
make.width.mas_equalTo(model.contentSize.width);
}];
if (imageModel.image) {
self.picImageView.image = imageModel.image;
}else {
[self.picImageView loadImageWithUrl:imageModel.imageUrl completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
self.picImageView.image = image;
}];
}
[self.bgImageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(55));
make.trailing.mas_equalTo(-kGetScaleWidth(72));
make.width.mas_equalTo(model.contentSize.width+kGetScaleWidth(10));
make.height.mas_equalTo(model.contentSize.height+kGetScaleWidth(10));
make.bottom.mas_equalTo(-kGetScaleWidth(10));
}];
}
#pragma mark - SDPhotoBrowserDelegate
- (NSURL *)photoBrowser:(SDPhotoBrowser *)browser highQualityImageURLForIndex:(NSInteger)index {
return [NSURL URLWithString:self.imageModel.url];
}
- (UIImage *)photoBrowser:(SDPhotoBrowser *)browser placeholderImageForIndex:(NSInteger)index {
return [UIImageConstant defalutBannerPlaceholder];
}
- (UIImage *)photoBrowser:(SDPhotoBrowser *)browser highQualityImageForIndex:(NSInteger)index{
if(self.imageModel.url == nil && self.imageModel.image != nil){
return self.imageModel.image;
}
return nil;
}
-(void)didLeftTapImage{
SDPhotoBrowser *browser = [[SDPhotoBrowser alloc]init];
browser.sourceImagesContainerView = self;
browser.delegate = self;
browser.imageCount = 1;
browser.currentImageIndex = 0;
browser.isMe = NO;
[browser show];
}
-(void)didRigthTapImage{
SDPhotoBrowser *browser = [[SDPhotoBrowser alloc]init];
browser.sourceImagesContainerView = self;
browser.delegate = self;
browser.imageCount = 1;
browser.currentImageIndex = 0;
browser.isMe = NO;
[browser show];
}
- (UIImage*)resizableImage:(UIImage *)image {
//
CGFloat top = (image.size.height - 1) / 2;
CGFloat left = (image.size.width - 1) / 2;
CGFloat right = (image.size.width - 1) / 2;
CGFloat bottom = (image.size.height - 1) / 2;
return [image resizableImageWithCapInsets:UIEdgeInsetsMake(top, left, bottom, right) resizingMode:UIImageResizingModeStretch];
}
- (MessageContentChatHallHeadView *)avatarView{
if(!_avatarView){
_avatarView = [[MessageContentChatHallHeadView alloc]initWithFrame:CGRectZero isSelf:NO];
}
return _avatarView;
}
- (UIImageView *)bgImageView{
if(!_bgImageView){
_bgImageView = [UIImageView new];
_bgImageView.userInteractionEnabled = YES;
_bgImageView.image = [self resizableImage:kImage(@"ms_message_headlines_text_left")];
}
return _bgImageView;
}
- (NetImageView *)bubbleImageView{
if(!_bubbleImageView){
_bubbleImageView = [[NetImageView alloc] init];
}
return _bubbleImageView;
}
- (NetImageView *)picImageView{
if(!_picImageView){
_picImageView = [NetImageView new];
_picImageView.userInteractionEnabled = YES;
_picImageView.layer.masksToBounds = YES;
_picImageView.contentMode = UIViewContentModeScaleAspectFill;
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didLeftTapImage)];
[_picImageView addGestureRecognizer:tap];
}
return _picImageView;
}
@end

View File

@@ -0,0 +1,16 @@
//
// MSSessionPublicChatHalImageCell.h
// YuMi
//
// Created by duoban on 2024/5/10.
//
#import <UIKit/UIKit.h>
#import "MessageBaseModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MSSessionPublicChatHalImageCell : UITableViewCell
- (void)render:(nonnull MessageBaseModel *)model ;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,182 @@
//
// MSSessionPublicChatHalImageCell.m
// YuMi
//
// Created by duoban on 2024/5/10.
//
#import "DJDKMIMOMColor.h"
#import "NSObject+MJExtension.h"
#import "QEmotionHelper.h"
#import <NIMSDK/NIMSDK.h>
#import <Masonry/Masonry.h>
#import "SpriteSheetImageManager.h"
#import "MessageHeadlinesTextModel.h"
#import "XPMessageRemoteExtModel.h"
#import "MSSessionPublicChatHalImageCell.h"
#import "MSSessionPublicChatHalImageModel.h"
#import "SDPhotoBrowser.h"
#import "MessageContentChatHallHeadView.h"
@interface MSSessionPublicChatHalImageCell()<SDPhotoBrowserDelegate>
@property(nonatomic,strong) MSSessionPublicChatHalImageModel * imageModel;
@property(nonatomic,strong) MessageContentChatHallHeadView *avatarView;
@property(nonatomic,strong) UIImageView *bgImageView;
///
@property (nonatomic,strong) NetImageView *bubbleImageView;
@property(nonatomic,strong) NetImageView *picImageView;
@end
@implementation MSSessionPublicChatHalImageCell
-(instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if(self){
[self installUI];
[self installConstraints];
}
return self;
}
-(void)installUI{
self.contentView.backgroundColor = [UIColor clearColor];
self.backgroundColor = [UIColor clearColor];
self.selectionStyle = 0;
[self.contentView addSubview:self.avatarView];
[self.contentView addSubview:self.bgImageView];
[self.contentView addSubview:self.bubbleImageView];
[self.contentView addSubview:self.picImageView];
}
-(void)installConstraints{
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.top.equalTo(self.contentView);
make.height.mas_equalTo(kGetScaleWidth(48));
}];
[self.bgImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(kGetScaleWidth(72));
make.width.mas_equalTo(kGetScaleWidth(52));
make.height.mas_equalTo(kGetScaleWidth(36));
make.top.mas_equalTo(kGetScaleWidth(55));
}];
[self.bubbleImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.bgImageView);
}];
[self.picImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.bgImageView).with.insets(UIEdgeInsetsMake(kGetScaleWidth(10),kGetScaleWidth(10),kGetScaleWidth(10),kGetScaleWidth(10)));
}];
}
#pragma mark -
- (void)render:(nonnull MessageBaseModel *)model {
MSSessionPublicChatHalImageModel * imageModel = (MSSessionPublicChatHalImageModel *)model;
self.imageModel = imageModel;
XPMessageRemoteExtModel *extModel = imageModel.extModel;
if(extModel == nil)return;
[self.avatarView render:model];
[self.picImageView mas_updateConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(model.contentSize.height);
make.width.mas_equalTo(model.contentSize.width);
}];
if (imageModel.image) {
self.picImageView.image = imageModel.image;
}else {
[self.picImageView loadImageWithUrl:imageModel.imageUrl completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
self.picImageView.image = image;
}];
}
[self.bgImageView mas_remakeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(55));
make.leading.mas_equalTo(kGetScaleWidth(72));
make.width.mas_equalTo(model.contentSize.width+kGetScaleWidth(10));
make.height.mas_equalTo(model.contentSize.height+kGetScaleWidth(10));
make.bottom.mas_equalTo(-kGetScaleWidth(10));
}];
}
#pragma mark - SDPhotoBrowserDelegate
- (NSURL *)photoBrowser:(SDPhotoBrowser *)browser highQualityImageURLForIndex:(NSInteger)index {
return [NSURL URLWithString:self.imageModel.url];
}
- (UIImage *)photoBrowser:(SDPhotoBrowser *)browser placeholderImageForIndex:(NSInteger)index {
return [UIImageConstant defalutBannerPlaceholder];
}
- (UIImage *)photoBrowser:(SDPhotoBrowser *)browser highQualityImageForIndex:(NSInteger)index{
if(self.imageModel.url == nil && self.imageModel.image != nil){
return self.imageModel.image;
}
return nil;
}
-(void)didLeftTapImage{
SDPhotoBrowser *browser = [[SDPhotoBrowser alloc]init];
browser.sourceImagesContainerView = self;
browser.delegate = self;
browser.imageCount = 1;
browser.currentImageIndex = 0;
browser.isMe = NO;
[browser show];
}
-(void)didRigthTapImage{
SDPhotoBrowser *browser = [[SDPhotoBrowser alloc]init];
browser.sourceImagesContainerView = self;
browser.delegate = self;
browser.imageCount = 1;
browser.currentImageIndex = 0;
browser.isMe = NO;
[browser show];
}
- (UIImage*)resizableImage:(UIImage *)image {
//
CGFloat top = (image.size.height - 1) / 2;
CGFloat left = (image.size.width - 1) / 2;
CGFloat right = (image.size.width - 1) / 2;
CGFloat bottom = (image.size.height - 1) / 2;
return [image resizableImageWithCapInsets:UIEdgeInsetsMake(top, left, bottom, right) resizingMode:UIImageResizingModeStretch];
}
- (MessageContentChatHallHeadView *)avatarView{
if(!_avatarView){
_avatarView = [[MessageContentChatHallHeadView alloc]initWithFrame:CGRectZero isSelf:NO];
}
return _avatarView;
}
- (UIImageView *)bgImageView{
if(!_bgImageView){
_bgImageView = [UIImageView new];
_bgImageView.userInteractionEnabled = YES;
_bgImageView.image = [self resizableImage:kImage(@"ms_message_headlines_text_left")];
}
return _bgImageView;
}
- (NetImageView *)bubbleImageView{
if(!_bubbleImageView){
_bubbleImageView = [[NetImageView alloc] init];
}
return _bubbleImageView;
}
- (NetImageView *)picImageView{
if(!_picImageView){
NetImageConfig *config = [NetImageConfig new];
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
_picImageView = [[NetImageView alloc]initWithConfig:config];
_picImageView.userInteractionEnabled = YES;
_picImageView.layer.cornerRadius = kGetScaleWidth(8);
_picImageView.layer.masksToBounds = YES;
_picImageView.contentMode = UIViewContentModeScaleAspectFill;
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(didLeftTapImage)];
[_picImageView addGestureRecognizer:tap];
}
return _picImageView;
}
@end

View File

@@ -0,0 +1,16 @@
//
// MSSessionPublicChatHalRightTextCell.h
// YuMi
//
// Created by duoban on 2024/5/16.
//
#import <UIKit/UIKit.h>
#import "MessageBaseModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MSSessionPublicChatHalRightTextCell : UITableViewCell
- (void)render:(nonnull MessageBaseModel *)model ;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,167 @@
//
// MSSessionPublicChatHalRightTextCell.m
// YuMi
//
// Created by duoban on 2024/5/16.
//
#import "DJDKMIMOMColor.h"
#import "NSObject+MJExtension.h"
#import "QEmotionHelper.h"
#import <NIMSDK/NIMSDK.h>
#import <Masonry/Masonry.h>
#import "SpriteSheetImageManager.h"
#import "MessageHeadlinesTextModel.h"
#import "XPMessageRemoteExtModel.h"
#import "MessageContentChatHallHeadView.h"
#import "MSSessionPublicChatHalRightTextCell.h"
@interface MSSessionPublicChatHalRightTextCell()
/**
*/
@property (nonatomic, strong) YYLabel * messageText;
@property(nonatomic,strong) UIImageView *bgImage;
///
@property (nonatomic,strong) NetImageView *bubbleImageView;
@property(nonatomic,strong) MessageContentChatHallHeadView *avatarView;
@end
@implementation MSSessionPublicChatHalRightTextCell
-(instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if(self){
[self installUI];
[self installConstraints];
}
return self;
}
- (void)render:(nonnull MessageBaseModel *)model {
MessageHeadlinesTextModel * textModel = (MessageHeadlinesTextModel *)model;
XPMessageRemoteExtModel *extModel = textModel.extModel;
if(extModel == nil)return;
[self.avatarView render:model];
self.messageText.attributedText = textModel.textAttribute;
self.bubbleImageView.image = nil;
self.bgImage.image = [self resizableImage:kImage(@"ms_message_headlines_text_right")];
NSString *iosBubbleUrl = extModel.iosBubbleUrl;
if(iosBubbleUrl.length > 0){
[self.bubbleImageView loadImageWithUrl:extModel.iosBubbleUrl completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
self.bgImage.image = nil;
UIImage *image1 = [UIImage imageWithCGImage:image.CGImage scale:2.0 orientation:UIImageOrientationUp];
self.bubbleImageView.image = [self resizableImage:image1];
}];
}
}
-(void)installUI{
self.contentView.backgroundColor = [UIColor clearColor];
self.backgroundColor = [UIColor clearColor];
self.selectionStyle = UITableViewCellSelectionStyleNone;
[self.contentView addSubview:self.avatarView];
[self.contentView addSubview:self.bgImage];
[self.contentView addSubview:self.bubbleImageView];
[self.contentView addSubview:self.messageText];
}
-(void)installConstraints{
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.top.equalTo(self.contentView);
make.height.mas_equalTo(kGetScaleWidth(48));
}];
[self.bgImage mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.messageText).offset(-kGetScaleWidth(10));
make.top.equalTo(self.messageText).offset(-kGetScaleWidth(10));
make.bottom.mas_equalTo(self.messageText).offset(kGetScaleWidth(10));
make.right.mas_equalTo(self.messageText).offset(kGetScaleWidth(10));
}];
[self.messageText mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(55));
make.trailing.mas_equalTo(-kGetScaleWidth(82));
make.bottom.mas_equalTo(-kGetScaleWidth(10));
}];
[self.bubbleImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.bgImage);
}];
}
#pragma mark -
- (UIImage*)resizableImage:(UIImage *)image {
//
CGFloat top = (image.size.height - 1) / 2;
CGFloat left = (image.size.width - 1) / 2;
CGFloat right = (image.size.width - 1) / 2;
CGFloat bottom = (image.size.height - 1) / 2;
return [image resizableImageWithCapInsets:UIEdgeInsetsMake(top, left, bottom, right) resizingMode:UIImageResizingModeStretch];
}
- (UIImageView *)bgImage{
if(!_bgImage){
_bgImage = [UIImageView new];
_bgImage.image = [self resizableImage:kImage(@"ms_message_headlines_text_right")];
}
return _bgImage;
}
- (NetImageView *)bubbleImageView{
if(!_bubbleImageView){
_bubbleImageView = [[NetImageView alloc] init];
}
return _bubbleImageView;
}
- (YYLabel *)messageText {
if (!_messageText) {
_messageText = [[YYLabel alloc]initWithFrame:CGRectZero];
_messageText.textColor = DJDKMIMOMColor.mainTextColor;
_messageText.numberOfLines = 0;
_messageText.font = kFontMedium(14);
_messageText.textColor = [UIColor whiteColor];
_messageText.textAlignment = NSTextAlignmentLeft;
_messageText.userInteractionEnabled = YES;
_messageText.preferredMaxLayoutWidth = kGetScaleWidth(220);
}
return _messageText;
}
- (MessageContentChatHallHeadView *)avatarView{
if(!_avatarView){
_avatarView = [[MessageContentChatHallHeadView alloc]initWithFrame:CGRectZero isSelf:YES];
}
return _avatarView;
}
- (void)awakeFromNib {
[super awakeFromNib];
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end

View File

@@ -0,0 +1,16 @@
//
// MSSessionPublicChatHalTextCell.h
// YuMi
//
// Created by duoban on 2024/5/9.
//
#import <UIKit/UIKit.h>
#import "MessageBaseModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MSSessionPublicChatHalTextCell : UITableViewCell
- (void)render:(nonnull MessageBaseModel *)model ;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,158 @@
//
// MSSessionPublicChatHalTextCell.m
// YuMi
//
// Created by duoban on 2024/5/9.
//
#import "MSSessionPublicChatHalTextCell.h"
#import "DJDKMIMOMColor.h"
#import "NSObject+MJExtension.h"
#import "QEmotionHelper.h"
#import <NIMSDK/NIMSDK.h>
#import <Masonry/Masonry.h>
#import "SpriteSheetImageManager.h"
#import "MessageHeadlinesTextModel.h"
#import "XPMessageRemoteExtModel.h"
#import "MessageContentChatHallHeadView.h"
@interface MSSessionPublicChatHalTextCell ()
/**
*/
@property (nonatomic, strong) YYLabel * messageText;
@property(nonatomic,strong) UIImageView *bgImage;
///
@property (nonatomic,strong) NetImageView *bubbleImageView;
@property(nonatomic,strong) MessageContentChatHallHeadView *avatarView;
@end
@implementation MSSessionPublicChatHalTextCell
-(instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if(self){
[self installUI];
[self installConstraints];
}
return self;
}
- (void)render:(nonnull MessageBaseModel *)model {
MessageHeadlinesTextModel * textModel = (MessageHeadlinesTextModel *)model;
XPMessageRemoteExtModel *extModel = textModel.extModel;
if(extModel == nil)return;
[self.avatarView render:model];
self.messageText.textColor = [UIColor whiteColor];
self.bubbleImageView.image = nil;
NSString *iosBubbleUrl = extModel.iosBubbleUrl;
_bgImage.image = [self resizableImage:kImage(@"ms_message_headlines_text_left")];
if(iosBubbleUrl.length > 0){
[self.bubbleImageView loadImageWithUrl:extModel.iosBubbleUrl completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
self.bgImage.image = nil;
self.messageText.textColor = UIColorFromRGB(0x333333);
UIImage *image1 = [UIImage imageWithCGImage:image.CGImage scale:2.0 orientation:UIImageOrientationUp];
self.bubbleImageView.image = [self resizableImage:image1];
}];
}
self.messageText.attributedText = textModel.textAttribute;
}
-(void)installUI{
self.contentView.backgroundColor = [UIColor clearColor];
self.backgroundColor = [UIColor clearColor];
self.selectionStyle = UITableViewCellSelectionStyleNone;
[self.contentView addSubview:self.avatarView];
[self.contentView addSubview:self.bgImage];
[self.contentView addSubview:self.bubbleImageView];
[self.contentView addSubview:self.messageText];
}
-(void)installConstraints{
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.top.equalTo(self.contentView);
make.height.mas_equalTo(kGetScaleWidth(48));
}];
[self.messageText mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(55));
make.leading.mas_equalTo(kGetScaleWidth(82));
make.bottom.mas_equalTo(-kGetScaleWidth(10));
}];
[self.bgImage mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.messageText).offset(-kGetScaleWidth(10));
make.top.equalTo(self.messageText).offset(-kGetScaleWidth(10));
make.bottom.mas_equalTo(self.messageText).offset(kGetScaleWidth(10));
make.right.mas_equalTo(self.messageText).offset(kGetScaleWidth(10));
}];
[self.bubbleImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.bgImage);
}];
}
#pragma mark -
- (UIImage*)resizableImage:(UIImage *)image {
//
CGFloat top = (image.size.height - 1) / 2;
CGFloat left = (image.size.width - 1) / 2;
CGFloat right = (image.size.width - 1) / 2;
CGFloat bottom = (image.size.height - 1) / 2;
return [image resizableImageWithCapInsets:UIEdgeInsetsMake(top, left, bottom, right) resizingMode:UIImageResizingModeStretch];
}
- (UIImageView *)bgImage{
if(!_bgImage){
_bgImage = [UIImageView new];
_bgImage.image = [self resizableImage:kImage(@"ms_message_headlines_text_left")];
}
return _bgImage;
}
- (NetImageView *)bubbleImageView{
if(!_bubbleImageView){
_bubbleImageView = [[NetImageView alloc] init];
}
return _bubbleImageView;
}
- (YYLabel *)messageText {
if (!_messageText) {
_messageText = [[YYLabel alloc]initWithFrame:CGRectZero];
_messageText.textColor = DJDKMIMOMColor.mainTextColor;
_messageText.numberOfLines = 0;
_messageText.font = kFontMedium(14);
_messageText.textColor = [UIColor whiteColor];
_messageText.textAlignment = NSTextAlignmentLeft;
_messageText.userInteractionEnabled = YES;
_messageText.preferredMaxLayoutWidth = kGetScaleWidth(220);
}
return _messageText;
}
- (MessageContentChatHallHeadView *)avatarView{
if(!_avatarView){
_avatarView = [[MessageContentChatHallHeadView alloc]initWithFrame:CGRectZero isSelf:NO];
}
return _avatarView;
}
- (void)awakeFromNib {
[super awakeFromNib];
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end

View File

@@ -246,7 +246,7 @@
[self.messageContent mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.top.trailing.bottom.mas_equalTo(self.messageBackground);
}];
[self.messageContent.superview layoutIfNeeded];
if (model.isHiddenAvatar) {
self.leftAvatar.hidden= YES;
self.rightAvatar.hidden = YES;

View File

@@ -0,0 +1,16 @@
//
// MSSessionContextHeadlinesView.h
// YuMi
//
// Created by duoban on 2024/5/9.
//
#import <UIKit/UIKit.h>
#import "MessageContentProtocol.h"
NS_ASSUME_NONNULL_BEGIN
@interface MSSessionContextHeadlinesView : UIView<MessageContentProtocol>
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,53 @@
//
// MSSessionContextHeadlinesView.m
// YuMi
//
// Created by duoban on 2024/5/9.
//
#import "MSSessionContextHeadlinesView.h"
#import "MSSessionPublicChatHallTopModel.h"
#import "MessageBaseModel.h"
#import "MessageHeadlinesModel.h"
#import "MSSessionScrollingModel.h"
#import "AttachmentModel.h"
@interface MSSessionContextHeadlinesView()
@property(nonatomic,strong) UILabel *textView;
///
@property (nonatomic,strong) MSSessionPublicChatHallTopModel *messageInfo;
@property (nonatomic,strong) AttachmentModel *attachment;
@property (nonatomic,strong) NIMMessage *message;
@end
@implementation MSSessionContextHeadlinesView
- (instancetype)init {
self = [super init];
if (self) {
[self addSubview:self.textView];
[self.textView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.trailing.equalTo(self).inset(kGetScaleWidth(15));
make.centerY.equalTo(self);
}];
}
return self;
}
- (void)render:(nonnull MessageBaseModel *)model {
self.superview.backgroundColor = [UIColor clearColor];
self.message = model.message;
MessageHeadlinesModel *obj = (MessageHeadlinesModel *)model;
MSSessionPublicChatHallTopModel * info = obj.info;
self.messageInfo = info;
self.textView.attributedText = obj.textAtt;
}
#pragma mark -
- (UILabel *)textView{
if(!_textView){
_textView = [UILabel new];
_textView.numberOfLines = 2;
}
return _textView;
}
@end

View File

@@ -0,0 +1,17 @@
//
// MessageContentChatHallHeadView.h
// YuMi
//
// Created by duoban on 2024/5/16.
//
#import <UIKit/UIKit.h>
#import "MessageBaseModel.h"
NS_ASSUME_NONNULL_BEGIN
@interface MessageContentChatHallHeadView : UIView
-(instancetype)initWithFrame:(CGRect)frame isSelf:(BOOL)isSelf;
- (void)render:(nonnull MessageBaseModel *)model;
@end
NS_ASSUME_NONNULL_END

View File

@@ -0,0 +1,196 @@
//
// MessageContentChatHallHeadView.m
// YuMi
//
// Created by duoban on 2024/5/16.
//
#import "MessageContentChatHallHeadView.h"
#import "DJDKMIMOMColor.h"
#import "NSObject+MJExtension.h"
#import "QEmotionHelper.h"
#import <NIMSDK/NIMSDK.h>
#import <Masonry/Masonry.h>
#import "SpriteSheetImageManager.h"
#import "MessageHeadlinesTextModel.h"
#import "XPMessageRemoteExtModel.h"
#import "MSSessionPublicChatHalImageModel.h"
@interface MessageContentChatHallHeadView()
@property(nonatomic,assign) BOOL isSelf;
///
@property (nonatomic,strong) YYAnimatedImageView *headWearImageView;
///
@property (nonatomic, strong) SpriteSheetImageManager *manager;
/**
*/
@property (nonatomic, strong) NetImageView * avatarView;
@property(nonatomic,strong) UILabel *nameView;
@property(nonatomic,strong) NetImageView *experImage;
@property(nonatomic,strong) NetImageView *charmImage;
@end
@implementation MessageContentChatHallHeadView
-(instancetype)initWithFrame:(CGRect)frame isSelf:(BOOL)isSelf{
self = [super initWithFrame:frame];
if(self){
self.isSelf = isSelf;
[self installUI];
[self installConstraints];
}
return self;
}
-(void)installUI{
[self addSubview:self.avatarView];
[self addSubview:self.headWearImageView];
[self addSubview:self.nameView];
[self addSubview:self.experImage];
[self addSubview:self.charmImage];
}
-(void)installConstraints{
if(self.isSelf){
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.trailing.mas_equalTo(-kGetScaleWidth(15));
make.width.height.mas_equalTo(kGetScaleWidth(48));
make.top.mas_equalTo(kGetScaleWidth(10));
}];
[self.headWearImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.avatarView).with.insets(UIEdgeInsetsMake(-kGetScaleWidth(10),-kGetScaleWidth(10),-kGetScaleWidth(10),-kGetScaleWidth(10)));
}];
[self.nameView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(21));
make.height.mas_equalTo(kGetScaleWidth(18));
make.trailing.mas_equalTo(-kGetScaleWidth(72));
make.leading.equalTo(self.experImage.mas_trailing).mas_offset(kGetScaleWidth(4));
}];
[self.experImage mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(kGetScaleWidth(36));
make.height.mas_equalTo(kGetScaleWidth(18));
make.leading.equalTo(self.charmImage.mas_trailing).mas_offset(kGetScaleWidth(4));
make.centerY.equalTo(self.nameView);
}];
[self.charmImage mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(kGetScaleWidth(36));
make.height.mas_equalTo(kGetScaleWidth(18));
make.leading.mas_greaterThanOrEqualTo(kGetScaleWidth(kGetScaleWidth(64)));
make.centerY.equalTo(self.nameView);
}];
return;
}
[self.avatarView mas_makeConstraints:^(MASConstraintMaker *make) {
make.leading.mas_equalTo(kGetScaleWidth(15));
make.width.height.mas_equalTo(kGetScaleWidth(48));
make.top.mas_equalTo(kGetScaleWidth(10));
}];
[self.headWearImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.avatarView).with.insets(UIEdgeInsetsMake(-kGetScaleWidth(10),-kGetScaleWidth(10),-kGetScaleWidth(10),-kGetScaleWidth(10)));
}];
[self.nameView mas_makeConstraints:^(MASConstraintMaker *make) {
make.top.mas_equalTo(kGetScaleWidth(21));
make.height.mas_equalTo(kGetScaleWidth(18));
make.leading.mas_equalTo(kGetScaleWidth(72));
make.trailing.equalTo(self.experImage.mas_leading).mas_offset(-kGetScaleWidth(4));
}];
[self.experImage mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(kGetScaleWidth(36));
make.height.mas_equalTo(kGetScaleWidth(18));
make.trailing.equalTo(self.charmImage.mas_leading).mas_offset(-kGetScaleWidth(4));
make.centerY.equalTo(self.nameView);
}];
[self.charmImage mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(kGetScaleWidth(36));
make.height.mas_equalTo(kGetScaleWidth(18));
make.trailing.mas_lessThanOrEqualTo(-kGetScaleWidth(64));
make.centerY.equalTo(self.nameView);
}];
}
- (void)render:(nonnull MessageBaseModel *)model {
XPMessageRemoteExtModel *extModel ;
if([model isKindOfClass:[MSSessionPublicChatHalImageModel class]]){
MSSessionPublicChatHalImageModel *imageModel = (MSSessionPublicChatHalImageModel *)model;
extModel = imageModel.extModel;
}else{
MessageHeadlinesTextModel * textModel = (MessageHeadlinesTextModel *)model;
extModel = textModel.extModel;
}
if(extModel == nil)return;
self.avatarView.image = nil;
[self.avatarView loadImageWithUrl:extModel.avatar completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
self.avatarView.image = image;
}];
self.experImage.image = nil;
[self.experImage loadImageWithUrl:extModel.experUrl completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
self.experImage.image = image;
}];
self.charmImage.image = nil;
[self.charmImage loadImageWithUrl:extModel.charmUrl completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
self.charmImage.image = image;
}];
self.nameView.text = extModel.nick;
self.headWearImageView.image = nil;
NSString *headwearUrl = extModel.headwearUrl;
if (headwearUrl.length > 0) {
NSURL *url = [NSURL URLWithString:headwearUrl];
@kWeakify(self);
[self.manager loadSpriteSheetImageWithURL:url completionBlock:^(YYSpriteSheetImage * _Nullable sprit) {
@kStrongify(self);
self.headWearImageView.image = sprit;
} failureBlock:^(NSError * _Nullable error) {
}];
}
}
#pragma mark -
- (NetImageView *)avatarView{
if(!_avatarView){
NetImageConfig *config = [NetImageConfig new];
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
_avatarView = [[NetImageView alloc]initWithConfig:config];
_avatarView.layer.cornerRadius = kGetScaleWidth(48)/2;
_avatarView.layer.masksToBounds = YES;
}
return _avatarView;
}
- (UILabel *)nameView{
if(!_nameView){
_nameView = [UILabel labelInitWithText:@"" font:kFontBold(14) textColor:UIColorFromRGB(0x333333)];
_nameView.lineBreakMode = self.isSelf ? NSLineBreakByTruncatingHead : NSLineBreakByTruncatingTail;
}
return _nameView;
}
- (YYAnimatedImageView *)headWearImageView {
if (!_headWearImageView) {
_headWearImageView = [[YYAnimatedImageView alloc] init];
_headWearImageView.backgroundColor = [UIColor clearColor];
_headWearImageView.contentMode = UIViewContentModeScaleAspectFit;
}
return _headWearImageView;
}
- (SpriteSheetImageManager *)manager {
if (!_manager) {
_manager = [[SpriteSheetImageManager alloc] init];
}
return _manager;
}
- (NetImageView *)experImage{
if(!_experImage){
_experImage = [NetImageView new];
}
return _experImage;
}
- (NetImageView *)charmImage{
if(!_charmImage){
_charmImage = [NetImageView new];
}
return _charmImage;
}
@end

View File

@@ -76,15 +76,6 @@
XPMonentsDetailViewController * detailView = [[XPMonentsDetailViewController alloc] init];
detailView.monentsInfo = self.monents;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:detailView animated:YES];
if ([ClientConfig shareConfig].canOpen) {
XPMonentsDetailViewController * detailView = [[XPMonentsDetailViewController alloc] init];
detailView.monentsInfo = self.monents;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:detailView animated:YES];
}else{
XPMomentsSimpleDetailViewController * detailView = [[XPMomentsSimpleDetailViewController alloc] init];
detailView.monentsInfo = self.monents;
[[XCCurrentVCStackManager shareManager].getCurrentVC.navigationController pushViewController:detailView animated:YES];
}
}
- (void)render:(MessageBaseModel *)message {

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