This commit is contained in:
启星
2025-10-15 17:21:09 +08:00
parent 3ba569dfa3
commit 2b477e8912
51 changed files with 1306 additions and 249 deletions

View File

@@ -10,9 +10,16 @@
@class QXRedPacketManager;
@protocol QXRedPacketManagerDelegate <NSObject>
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didAddRedPacket:(QXRedPacketModel *)redPacket;
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didRemoveRedPacket:(NSString *)packetId;
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didUpdateRedPacket:(QXRedPacketModel *)redPacket;
/// 推送添加单个红包回调
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didAddRedPacket:(QXRedPacketModel *)redPacket remainingCount:(NSInteger)remainingCount;
/// 首次获取房间内红包列表进行添加后回调
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didAddRedPackets:(NSArray<QXRedPacketModel *>*)redPackets remainingCount:(NSInteger)remainingCount;
/// 红包从列表移除后的回调
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didRemoveRedPacket:(NSString *)packetId remainingCount:(NSInteger)remainingCount;
/// 红包状态发生变化时回调(由不可抢到可抢)
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didUpdateRedPacket:(QXRedPacketModel *)redPacket remainingCount:(NSInteger)remainingCount;
/// 红包状态发生变化时回调(由不可抢到可抢)
- (void)QXRedPacketManager:(QXRedPacketManager *)manager didUpdateRedPacketTime:(long)time redPacket:(QXRedPacketModel *)redPacket;
@end
@interface QXRedPacketManager : NSObject
@@ -20,16 +27,24 @@
@property (nonatomic, weak) id<QXRedPacketManagerDelegate> delegate;
+ (instancetype)sharedManager;
/// 批量添加红包
- (void)addRedPackets:(NSArray<QXRedPacketModel *>*)redPackets;
/// 添加红包
- (void)addRedPacket:(QXRedPacketModel *)redPacket;
/// 移除红包
- (void)removeRedPacket:(NSString *)packetId;
/// 获取所有红包
- (NSArray<QXRedPacketModel *> *)allRedPackets;
/// 根据位置获取红包
- (QXRedPacketModel *)redPacketAtPosition:(NSInteger)position;
/// 根据红包id获取红包
- (QXRedPacketModel *)getRedPacket:(NSString *)packetId;
/// 检查并更新红包状态
- (void)checkAndUpdateRedPackets;
/// 移除所有红包
-(void)removeAllRedpackets;
/// 开启定时器
-(void)startCheckTimer;
/// 销毁定时器
-(void)endCheckTimer;
/// 回收内存
-(void)destoryRedpacketInfo;
@end