BGRoomMicManageCell.m 8.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249
  1. //
  2. // BGRoomMicManageCell.m
  3. // UniversalApp
  4. //
  5. // Created by bugu on 2020/4/8.
  6. // Copyright © 2020 voidcat. All rights reserved.
  7. //
  8. #import "BGRoomMicManageCell.h"
  9. #import "RoomUserInfo.h"
  10. #import "UIFont+Ext.h"
  11. @interface BGRoomMicManageCell ()
  12. @property(nonatomic, strong) UIImageView *iconImageView;
  13. @property(nonatomic, strong) QMUIButton *titleSexBtn;
  14. @property(nonatomic, strong) UIView *sexView;
  15. @property(nonatomic, strong) UIButton *micBtn;
  16. @property(nonatomic, strong) UIButton *manageBtn;
  17. //拒绝上麦按钮 或者抱下麦
  18. @property(nonatomic, strong) UIButton *refuseBtn;
  19. @end
  20. @implementation BGRoomMicManageCell
  21. @synthesize type = _type;
  22. @synthesize model = _model;
  23. - (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
  24. if (self = [super initWithStyle:style reuseIdentifier:reuseIdentifier]) {
  25. [self setupViews];
  26. }
  27. return self;
  28. }
  29. - (void)setupViews {
  30. self.selectionStyle = UITableViewCellSelectionStyleNone;
  31. _iconImageView = ({
  32. UIImageView * imageView = [[UIImageView alloc]init];
  33. imageView.layer.cornerRadius = 22;
  34. imageView.clipsToBounds = YES;
  35. imageView.contentMode = UIViewContentModeScaleAspectFill;
  36. imageView;
  37. });
  38. _titleSexBtn = ({
  39. QMUIButton * button = [[QMUIButton alloc]initWithFrame:CGRectZero];
  40. // [button setTitle:@"0" forState:UIControlStateNormal];
  41. [button.titleLabel setFont:UIFont.bg_mediumFont16];
  42. [button setTitleColor:kGrayColor forState:UIControlStateNormal];
  43. [button setImage:[UIImage imageNamed:@"girl"] forState:UIControlStateNormal];
  44. button.imagePosition = QMUIButtonImagePositionRight;
  45. button.spacingBetweenImageAndTitle = 5;
  46. button;
  47. });
  48. _micBtn = ({
  49. UIButton * button = [[UIButton alloc]initWithFrame:CGRectZero];
  50. [button setImage:[UIImage imageNamed:@"同意按钮"] forState:UIControlStateNormal];
  51. // [button setImage:[UIImage imageNamed:@"mike_off_v2"] forState:UIControlStateSelected];
  52. [button addTarget:self action:@selector(micBtnAction:) forControlEvents:UIControlEventTouchUpInside];
  53. button.hidden = YES;
  54. button;
  55. });
  56. _manageBtn = ({
  57. UIButton * button = [[UIButton alloc]initWithFrame:CGRectZero];
  58. // [button setTitle:@"0" forState:UIControlStateNormal];
  59. [button.titleLabel setFont:UIFont.bg_mediumFont14];
  60. [button setTitleColor:kWhiteColor forState:UIControlStateNormal];
  61. // [button setImage:[UIImage imageNamed:@"同意按钮"] forState:UIControlStateNormal];
  62. [button setBackgroundImage:[UIImage imageNamed:@"同意按钮"] forState:UIControlStateNormal];
  63. [button setTitle:@"同意上麦" forState:UIControlStateNormal];
  64. // [button setImage:[UIImage imageNamed:@"同意按钮"] forState:UIControlStateNormal];
  65. button.hidden = YES;
  66. button.clipsToBounds = YES;
  67. button.layer.cornerRadius = 15;
  68. [button addTarget:self action:@selector(manageBtnAction:) forControlEvents:UIControlEventTouchUpInside];
  69. button;
  70. });
  71. _manageBtn.frame = CGRectMake(kScreenW-70*2-25, 10, 70, 30);
  72. _refuseBtn = ({
  73. UIButton * button = [[UIButton alloc]initWithFrame:CGRectZero];
  74. // [button setTitle:@"0" forState:UIControlStateNormal];
  75. [button.titleLabel setFont:UIFont.bg_mediumFont14];
  76. [button setTitleColor:kWhiteColor forState:UIControlStateNormal];
  77. // [button setImage:[UIImage imageNamed:@"同意按钮"] forState:UIControlStateNormal];
  78. [button setBackgroundImage:[UIImage imageNamed:@"同意按钮"] forState:UIControlStateNormal];
  79. [button setTitle:@"拒绝上麦" forState:UIControlStateNormal];
  80. // [button setImage:[UIImage imageNamed:@"同意按钮"] forState:UIControlStateNormal];
  81. button.clipsToBounds = YES;
  82. button.layer.cornerRadius = 15;
  83. [button addTarget:self action:@selector(manageBtnAction:) forControlEvents:UIControlEventTouchUpInside];
  84. button;
  85. });
  86. _refuseBtn.frame = CGRectMake(kScreenW-70-20, 10, 70, 30);
  87. [self.contentView addSubview:_iconImageView];
  88. [self.contentView addSubview:_titleSexBtn];
  89. [self.contentView addSubview:_micBtn];
  90. [self.contentView addSubview:_manageBtn];
  91. [self.contentView addSubview:_refuseBtn];
  92. [self.contentView addSubview:self.sexView];
  93. //
  94. // _addBtn.titleLabel.font = UIFont.bg_mediumFont14;
  95. //
  96. // [self.contentView addSubview:_addBtn];
  97. //
  98. // _cancelBtn = [UIButton buttonLayerColor:kAppGrayColor3 Frame:CGRectMake(kScreenW-70-20, 20, 70, 30) Title:@"取消" target:self action:@selector(cancelBtnAction)];
  99. //
  100. //
  101. // _cancelBtn.titleLabel.font = UIFont.bg_mediumFont14;
  102. //
  103. // [self.contentView addSubview:_cancelBtn];
  104. //
  105. //
  106. // _cancelBtn.
  107. }
  108. - (void)layoutSubviews {
  109. [super layoutSubviews];
  110. [_iconImageView mas_makeConstraints:^(MASConstraintMaker *make) {
  111. make.centerY.mas_equalTo(0);
  112. make.left.mas_equalTo(20);
  113. make.size.mas_equalTo(44);
  114. }];
  115. [_titleSexBtn mas_makeConstraints:^(MASConstraintMaker *make) {
  116. make.left.equalTo(_iconImageView.mas_right).offset(12);
  117. make.centerY.equalTo(_iconImageView);
  118. }];
  119. [self.sexView mas_makeConstraints:^(MASConstraintMaker *make) {
  120. make.left.mas_equalTo(self.titleSexBtn.mas_right).mas_offset(6);
  121. make.size.mas_equalTo(CGSizeMake(32, 17));
  122. make.centerY.mas_equalTo(self.titleSexBtn);
  123. }];
  124. [_micBtn mas_makeConstraints:^(MASConstraintMaker *make) {
  125. make.right.mas_equalTo(-116);
  126. make.centerY.mas_equalTo(0);
  127. make.size.mas_equalTo(33);
  128. }];
  129. }
  130. -(void)setType:(RoomMicManageCellType)type{
  131. _type = type;
  132. if (type == RoomMicManageCellTypeApplyList) {
  133. self.manageBtn.hidden = NO;
  134. self.refuseBtn.hidden = NO;
  135. [self.manageBtn setTitle:@"同意上麦" forState:UIControlStateNormal];
  136. }
  137. else if(type == RoomMicManageCellTypeManageView)
  138. {
  139. self.refuseBtn.hidden = NO;
  140. self.manageBtn.hidden = NO;
  141. [self.manageBtn setTitle:@"" forState:UIControlStateNormal];
  142. [self.manageBtn setImage:[UIImage imageNamed:@"开麦"] forState:UIControlStateNormal];
  143. [self.manageBtn setImage:[UIImage imageNamed:@"闭麦"] forState:UIControlStateSelected];
  144. [self.manageBtn setBackgroundImage:nil forState:UIControlStateNormal];
  145. [self.refuseBtn setBackgroundImage:nil forState:UIControlStateNormal];
  146. [self.refuseBtn setTitleColor:RGB(255, 255, 255) forState:UIControlStateNormal];
  147. [self.refuseBtn setBackgroundColor:RGB(244, 36, 22)];
  148. [self.refuseBtn setTitle:@"抱下麦" forState:UIControlStateNormal];
  149. }
  150. }
  151. - (void)setModel:(RoomUserInfo *)model{
  152. _model = model;
  153. [self.iconImageView sd_setImageWithURL:[NSURL URLWithString:model.head_image] placeholderImage:nil];
  154. [self.titleSexBtn setTitle:model.nick_name forState:UIControlStateNormal];
  155. self.micBtn.hidden = YES;
  156. [self.manageBtn setTitle:@"同意上麦" forState:UIControlStateNormal];
  157. if(self.type == RoomMicManageCellTypeManageView)
  158. {
  159. if(model.is_ban_voice == 0)
  160. {
  161. self.manageBtn.selected = NO;
  162. }
  163. else
  164. {
  165. self.manageBtn.selected = YES;
  166. }
  167. }
  168. }
  169. - (void)manageBtnAction:(UIButton *)sender {
  170. // if ([sender.titleLabel.text isEqualToString:ASLocalizedString(@"在麦上")]) {
  171. // return;
  172. // }
  173. if (self.delegate && [self.delegate respondsToSelector:@selector(manageCell:didClickManageBtn:)]) {
  174. [self.delegate manageCell:self didClickManageBtn:sender];
  175. }
  176. }
  177. - (void)micBtnAction:(UIButton *)sender {
  178. if (self.delegate && [self.delegate respondsToSelector:@selector(manageCell:didClickMicBtn:)]) {
  179. [self.delegate manageCell:self didClickMicBtn:sender];
  180. }
  181. }
  182. - (UIView *)sexView{
  183. if (!_sexView) {
  184. _sexView = [[UIView alloc]initWithFrame:CGRectZero];
  185. }
  186. return _sexView;
  187. }
  188. @end