123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229 |
- //
- // YOUPAILZChatRoomFooterView.m
- // VQU
- //
- // Created by CY on 2021/11/1.
- // Copyright © 2021 MS. All rights reserved.
- //
- #import "YOUPAILZChatRoomFooterView.h"
- @interface YOUPAILZChatRoomFooterView ()<NIMConversationManagerDelegate>
- @end
- @implementation YOUPAILZChatRoomFooterView
- - (void)dealloc{
- [[NIMSDK sharedSDK].conversationManager removeDelegate:self];
- }
- - (instancetype)init{
- if (self = [super init]) {
- [self youpaifinitUI];
- [[NIMSDK sharedSDK].conversationManager addDelegate:self];
- [self youpaifupdateUnread];
- }
- return self;
- }
- - (void)youpaifinitUI{
-
- UIButton *youpaipmoreBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- [youpaipmoreBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_more"] forState:UIControlStateNormal];
- [youpaipmoreBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_more"] forState:UIControlStateHighlighted];
- [youpaipmoreBtn addTarget:self action:@selector(youpaifmoreBtnClick) forControlEvents:UIControlEventTouchUpInside];
- [self addSubview:youpaipmoreBtn];
- self.youpaipmoreBtn = youpaipmoreBtn;
- [youpaipmoreBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.right.offset(-4.0f);
- make.top.offset(0.0f);
- make.size.mas_offset(CGSizeMake(32.0f, 32.0f));
- }];
-
- UIButton *youpaipgameBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- [youpaipgameBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_game"] forState:UIControlStateNormal];
- [youpaipgameBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_game"] forState:UIControlStateHighlighted];
- [youpaipgameBtn addTarget:self action:@selector(youpaifgameBtnClick) forControlEvents:UIControlEventTouchUpInside];
- [self addSubview:youpaipgameBtn];
- self.youpaipgameBtn = youpaipgameBtn;
- [youpaipgameBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.right.equalTo(youpaipmoreBtn.mas_left).offset(-9.0f);
- make.top.offset(0.0f);
- make.size.mas_offset(CGSizeMake(32.0f, 32.0f));
- }];
-
- YOUPAILZBadgeButton *messageBtn = [YOUPAILZBadgeButton buttonWithType:UIButtonTypeCustom];
- [messageBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_message"] forState:(UIControlStateNormal)];
- [messageBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_message"] forState:UIControlStateHighlighted];
- [messageBtn addTarget:self action:@selector(youpaifmessageBtnClick) forControlEvents:(UIControlEventTouchUpInside)];
- [self addSubview:messageBtn];
- self.messageBtn = messageBtn;
- [messageBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.right.equalTo(youpaipgameBtn.mas_left).offset(-9.0f);
- make.top.offset(0.0f);
- make.size.mas_offset(CGSizeMake(32.0f, 32.0f));
- }];
-
- UIButton *youpaipmicBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- [youpaipmicBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_mic_n"] forState:UIControlStateNormal];
- [youpaipmicBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_mic_s"] forState:UIControlStateSelected];
- [youpaipmicBtn addTarget:self action:@selector(youpaifmicBtnClick:) forControlEvents:UIControlEventTouchUpInside];
- youpaipmicBtn.hidden = YES;
- youpaipmicBtn.selected = YES;
- [self addSubview:youpaipmicBtn];
- self.youpaipmicBtn = youpaipmicBtn;
- [youpaipmicBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.right.equalTo(messageBtn.mas_left).offset(-9.0f);
- make.top.offset(0.0f);
- make.size.mas_offset(CGSizeMake(32.0f, 32.0f));
- }];
-
- UIButton *youpaipgiftBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- [youpaipgiftBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_gift"] forState:UIControlStateNormal];
- [youpaipgiftBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_gift"] forState:UIControlStateHighlighted];
- [youpaipgiftBtn addTarget:self action:@selector(youpaifgiftBtnClick) forControlEvents:UIControlEventTouchUpInside];
- [self addSubview:youpaipgiftBtn];
- self.youpaipgiftBtn = youpaipgiftBtn;
- [youpaipgiftBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.right.equalTo(messageBtn.mas_left).offset(-9.0f);
- make.top.offset(0.0f);
- make.size.mas_offset(CGSizeMake(32.0f, 32.0f));
- }];
-
- UIView *chatBgV = [[UIView alloc] init];
- chatBgV.backgroundColor = [[UIColor blackColor] colorWithAlphaComponent:0.3f];
- chatBgV.layer.cornerRadius = 16.0f;
- chatBgV.clipsToBounds = YES;
- [self addSubview:chatBgV];
- [chatBgV mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.offset(14.0f);
- make.top.offset(0.0f);
- make.height.offset(32.0f);
- make.right.equalTo(youpaipgiftBtn.mas_left).offset(-9.0f);
- }];
-
- UIButton *youpaipemojiBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- [youpaipemojiBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_emoji"] forState:UIControlStateNormal];
- [youpaipemojiBtn setImage:[UIImage imageNamed:@"vqu_images_chatroom_emoji"] forState:UIControlStateHighlighted];
- [youpaipemojiBtn addTarget:self action:@selector(youpaifemojiBtnClick) forControlEvents:UIControlEventTouchUpInside];
- [chatBgV addSubview:youpaipemojiBtn];
- self.youpaipemojiBtn = youpaipemojiBtn;
- [youpaipemojiBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.right.offset(-7.0f);
- make.centerY.equalTo(chatBgV.mas_centerY);
- make.size.mas_offset(CGSizeMake(24.0f, 24.0f));
- }];
-
- UILabel *chatDescL = [[UILabel alloc] init];
- chatDescL.font = LCFont(14.0f);
- chatDescL.text = @"聊聊天…";
- chatDescL.textColor = HexColorFromRGB(0x6C6B70);
- [chatBgV addSubview:chatDescL];
- [chatDescL mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.offset(7.0f);
- make.top.bottom.offset(0.0f);
- }];
-
- UIButton *youpaipchatBtn = [UIButton buttonWithType:UIButtonTypeCustom];
- [youpaipchatBtn addTarget:self action:@selector(youpaifchatBtnClick) forControlEvents:UIControlEventTouchUpInside];
- [chatBgV addSubview:youpaipchatBtn];
- self.youpaipchatBtn = youpaipchatBtn;
- [youpaipchatBtn mas_makeConstraints:^(MASConstraintMaker *make) {
- make.left.offset(0.0f);
- make.top.bottom.offset(0.0f);
- make.right.equalTo(youpaipemojiBtn.mas_left).offset(0.0f);
- }];
-
- }
- // 显示麦克风按钮
- - (void)youpaifshowMicBtn:(BOOL)show{
- self.youpaipmicBtn.hidden = !show;
- [self.youpaipgiftBtn mas_remakeConstraints:^(MASConstraintMaker *make) {
- if (self.youpaipmicBtn.hidden) {
- make.right.equalTo(self.messageBtn.mas_left).offset(-9.0f);
- }else{
- make.right.equalTo(self.youpaipmicBtn.mas_left).offset(-9.0f);
- }
- make.top.offset(0.0f);
- make.size.mas_offset(CGSizeMake(32.0f, 32.0f));
- }];
-
- }
- - (void)youpaifmoreBtnClick{
- if (self.youpaipmoreBtnClickBlock != nil) {
- self.youpaipmoreBtnClickBlock();
- }
- }
- - (void)youpaifgameBtnClick{
- if (self.youpaipgameBtnClickBlock != nil) {
- self.youpaipgameBtnClickBlock();
- }
- }
- - (void)youpaifmessageBtnClick{
- if (self.messageBtnClickBlock != nil) {
- self.messageBtnClickBlock();
- }
- }
- - (void)youpaifmicBtnClick:(UIButton *)sender{
- sender.selected = !sender.selected;
- if (self.youpaipmicBtnClickBlock != nil) {
- self.youpaipmicBtnClickBlock();
- }
- }
- - (void)youpaifgiftBtnClick{
- if (self.youpaipgiftBtnClickBlock != nil) {
- self.youpaipgiftBtnClickBlock();
- }
- }
- - (void)youpaifemojiBtnClick{
- if (self.youpaipemojiBtnClickBlock != nil) {
- self.youpaipemojiBtnClickBlock();
- }
- }
- - (void)youpaifchatBtnClick{
- if (self.youpaipchatBtnClickBlock != nil) {
- self.youpaipchatBtnClickBlock();
- }
- }
- /// 更新信息数
- - (void)youpaifupdateUnread{
- NSInteger badge = [[NIMSDK sharedSDK].conversationManager allUnreadCount];
- self.messageBtn.youpaipbadgeValue = badge;
- }
- #pragma mark - NIMConversationManagerDelegate
- - (void)didAddRecentSession:(NIMRecentSession *)recentSession
- totalUnreadCount:(NSInteger)totalUnreadCount{
- [self youpaifupdateUnread];
- }
- - (void)didUpdateRecentSession:(NIMRecentSession *)recentSession
- totalUnreadCount:(NSInteger)totalUnreadCount{
- [self youpaifupdateUnread];
- }
- - (void)didRemoveRecentSession:(NIMRecentSession *)recentSession
- totalUnreadCount:(NSInteger)totalUnreadCount{
- [self youpaifupdateUnread];
- }
- - (void)messagesDeletedInSession:(NIMSession *)session{
- [self youpaifupdateUnread];
- }
- - (void)allMessagesDeleted{
- [self youpaifupdateUnread];
- }
- @end
|