feat: 添加情绪颜色选择功能及相关存储管理

主要变更:
1. 在 EPMomentPublishViewController 中添加情绪颜色选择按钮,用户可通过色轮选择情绪颜色。
2. 新增 EPEmotionColorStorage 类,提供情绪颜色的保存、获取和删除功能,支持动态 ID 的关联。
3. 新增 EPEmotionColorPicker 视图,提供环形布局的颜色选择器,增强用户体验。
4. 更新 EPMomentCell 和 EPMomentListView,以支持情绪颜色的显示和处理,确保动态展示的情绪效果。

此更新旨在提升用户交互体验,丰富动态发布功能,确保情绪颜色的有效管理和展示。
This commit is contained in:
edwinQQQ
2025-10-14 18:26:16 +08:00
parent de8627a230
commit a8319c61d8
9 changed files with 561 additions and 5 deletions

View File

@@ -768,6 +768,8 @@
4CD47BCC2E61ADE400BCDA46 /* XPSocialAction.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD47BCB2E61ADE400BCDA46 /* XPSocialAction.m */; };
4CD6FF662D673A5C00262AB7 /* AgentMessageModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD6FF652D673A5C00262AB7 /* AgentMessageModel.m */; };
4CD6FF692D673F7F00262AB7 /* AgentMessageTableViewCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CD6FF682D673F7F00262AB7 /* AgentMessageTableViewCell.m */; };
4CDF7F3F2E9E580E00113F54 /* EPEmotionColorStorage.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CDF7F3E2E9E580E00113F54 /* EPEmotionColorStorage.m */; };
4CDF7F422E9E581900113F54 /* EPEmotionColorPicker.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CDF7F412E9E581900113F54 /* EPEmotionColorPicker.m */; };
4CE3A9462D22754C003F0796 /* RechargeUserModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE3A9452D22754C003F0796 /* RechargeUserModel.m */; };
4CE746C32D9290430094E496 /* RoomBoomManager.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE746C22D9290430094E496 /* RoomBoomManager.m */; };
4CE746C62D9297C30094E496 /* BravoGiftTipModel.m in Sources */ = {isa = PBXBuildFile; fileRef = 4CE746C52D9297C30094E496 /* BravoGiftTipModel.m */; };
@@ -2991,6 +2993,10 @@
4CD6FF652D673A5C00262AB7 /* AgentMessageModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AgentMessageModel.m; sourceTree = "<group>"; };
4CD6FF672D673F7F00262AB7 /* AgentMessageTableViewCell.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = AgentMessageTableViewCell.h; sourceTree = "<group>"; };
4CD6FF682D673F7F00262AB7 /* AgentMessageTableViewCell.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = AgentMessageTableViewCell.m; sourceTree = "<group>"; };
4CDF7F3D2E9E580E00113F54 /* EPEmotionColorStorage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = EPEmotionColorStorage.h; sourceTree = "<group>"; };
4CDF7F3E2E9E580E00113F54 /* EPEmotionColorStorage.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = EPEmotionColorStorage.m; sourceTree = "<group>"; };
4CDF7F402E9E581900113F54 /* EPEmotionColorPicker.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = EPEmotionColorPicker.h; sourceTree = "<group>"; };
4CDF7F412E9E581900113F54 /* EPEmotionColorPicker.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = EPEmotionColorPicker.m; sourceTree = "<group>"; };
4CE3A9442D22754C003F0796 /* RechargeUserModel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RechargeUserModel.h; sourceTree = "<group>"; };
4CE3A9452D22754C003F0796 /* RechargeUserModel.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = RechargeUserModel.m; sourceTree = "<group>"; };
4CE746C12D9290430094E496 /* RoomBoomManager.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = RoomBoomManager.h; sourceTree = "<group>"; };
@@ -6415,6 +6421,8 @@
4C06427B2E97BD6D00BAF413 /* Views */ = {
isa = PBXGroup;
children = (
4CDF7F402E9E581900113F54 /* EPEmotionColorPicker.h */,
4CDF7F412E9E581900113F54 /* EPEmotionColorPicker.m */,
4C0642972E98F77900BAF413 /* EPMomentListView.h */,
4C0642982E98F77900BAF413 /* EPMomentListView.m */,
4C0642792E97BD6D00BAF413 /* EPMomentCell.h */,
@@ -6456,6 +6464,8 @@
4C0642952E98F76F00BAF413 /* Services */ = {
isa = PBXGroup;
children = (
4CDF7F3D2E9E580E00113F54 /* EPEmotionColorStorage.h */,
4CDF7F3E2E9E580E00113F54 /* EPEmotionColorStorage.m */,
4C1E98C52E9A45BC0031AE79 /* EPMomentAPISwiftHelper.swift */,
);
path = Services;
@@ -12967,6 +12977,7 @@
5456F3C82C6EF962000E1805 /* VIPCenterViewController.m in Sources */,
E8EEB90926FC579A007C6EBA /* XPMineUserInfoEditTableViewCell.m in Sources */,
E8F1559028125E2D00EE8C06 /* MessageAudioCenter.m in Sources */,
4CDF7F3F2E9E580E00113F54 /* EPEmotionColorStorage.m in Sources */,
E8901CF628B38D89001E9A92 /* XPGraffitiGiftView.m in Sources */,
E89DA67527009ACD008483C1 /* XPMineRechargeNavView.m in Sources */,
E81A6546283519CA00F55894 /* MomentsTopicModel.m in Sources */,
@@ -13201,6 +13212,7 @@
189DD75026E21D9000AB55B1 /* GCDHelper.m in Sources */,
E82D5C76276AEB5100858D6D /* NameplateModel.m in Sources */,
142721AF29A75F6F00C7C423 /* SJXCSMIPHelper.m in Sources */,
4CDF7F422E9E581900113F54 /* EPEmotionColorPicker.m in Sources */,
E87E62742A3F5907002F68C9 /* XPHomeBannerTableViewCell.m in Sources */,
E88C72A3282917590047FB2B /* XPRoomMusicVoiceSettingView.m in Sources */,
239D0FA82BFCB88D002977CE /* XPRoomBackContainerView.m in Sources */,