首次提交
This commit is contained in:
307
QXLive/Mine(音域)/View/设置/QXBlackListCell.m
Normal file
307
QXLive/Mine(音域)/View/设置/QXBlackListCell.m
Normal file
@@ -0,0 +1,307 @@
|
||||
//
|
||||
// QXBlackListCell.m
|
||||
// QXLive
|
||||
//
|
||||
// Created by 启星 on 2025/5/12.
|
||||
//
|
||||
|
||||
#import "QXBlackListCell.h"
|
||||
@interface QXBlackListCell()
|
||||
@property (nonatomic,strong)NSMutableArray *iconViewArray;
|
||||
@end
|
||||
@implementation QXBlackListCell
|
||||
+(instancetype)cellWithTableView:(UITableView *)tableView{
|
||||
static NSString *cellId = @"QXBlackListCell";
|
||||
QXBlackListCell *cell = [tableView dequeueReusableCellWithIdentifier:cellId];
|
||||
if (!cell) {
|
||||
cell = [[NSBundle mainBundle] loadNibNamed:cellId owner:nil options:nil].lastObject;
|
||||
cell.backgroundColor = [UIColor clearColor];
|
||||
}
|
||||
return cell;
|
||||
}
|
||||
- (IBAction)removeAction:(UIButton*)sender {
|
||||
switch (self.cellType) {
|
||||
case QXBlackListCellTypeBlack:{
|
||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didRemoveSuccess:)]) {
|
||||
[self.delegate didRemoveSuccess:self.userModel];
|
||||
}
|
||||
}
|
||||
break;
|
||||
case QXBlackListCellTypeFans:
|
||||
case QXBlackListCellTypeFocus:{
|
||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didFocus:userModel:)]) {
|
||||
[self.delegate didFocus:sender userModel:self.userModel];
|
||||
}
|
||||
}
|
||||
break;
|
||||
case QXBlackListCellTypeLogin:{
|
||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didClickLoginWithModel:)]) {
|
||||
[self.delegate didClickLoginWithModel:self.loginModel];
|
||||
}
|
||||
}
|
||||
break;
|
||||
case QXBlackListCellTypeHugSeat:{
|
||||
if (self.delegate && [self.delegate respondsToSelector:@selector(didHugSeatWithModel:isUpSeat:)]) {
|
||||
[self.delegate didHugSeatWithModel:self.onlineUser isUpSeat:self.isUpSeat];
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
||||
-(void)setIsUpSeat:(BOOL)isUpSeat{
|
||||
_isUpSeat = isUpSeat;
|
||||
}
|
||||
|
||||
-(void)setLoginModel:(QXLoginModel *)loginModel{
|
||||
_loginModel = loginModel;
|
||||
[self.headerImageView sd_setImageWithURL:[NSURL URLWithString:loginModel.avatar]];
|
||||
self.nameLabel.text = loginModel.nickname;
|
||||
if (loginModel.sex.intValue == 1) {
|
||||
self.sexImageView.image = [UIImage imageNamed:@"user_sex_boy"];
|
||||
self.sexImageView.hidden = NO;
|
||||
}else if(loginModel.sex.intValue == 2){
|
||||
self.sexImageView.image = [UIImage imageNamed:@"user_sex_girl"];
|
||||
self.sexImageView.hidden = NO;
|
||||
}else{
|
||||
self.sexImageView.hidden = YES;
|
||||
}
|
||||
}
|
||||
-(void)setUserModel:(QXUserHomeModel *)userModel{
|
||||
_userModel = userModel;
|
||||
[self.headerImageView sd_setImageWithURL:[NSURL URLWithString:userModel.avatar]];
|
||||
self.nameLabel.text = userModel.nickname;
|
||||
if (userModel.sex.intValue == 1) {
|
||||
self.sexImageView.image = [UIImage imageNamed:@"user_sex_boy"];
|
||||
self.sexImageView.hidden = NO;
|
||||
}else if(userModel.sex.intValue == 2){
|
||||
self.sexImageView.image = [UIImage imageNamed:@"user_sex_girl"];
|
||||
self.sexImageView.hidden = NO;
|
||||
}else{
|
||||
self.sexImageView.hidden = YES;
|
||||
}
|
||||
self.removeBtn.selected = userModel.is_follow==1?YES:NO;
|
||||
if (userModel.icon.count > 0) {
|
||||
self.iconBgView.hidden = NO;
|
||||
for (int i = 0;i < self.userModel.icon.count;i++) {
|
||||
if (i < 3) {
|
||||
UIImageView *iconImageView = self.iconViewArray[i];
|
||||
iconImageView.hidden = NO;
|
||||
[iconImageView sd_setImageWithURL:[NSURL URLWithString:self.userModel.icon[i]]];
|
||||
}
|
||||
}
|
||||
}else{
|
||||
self.iconBgView.hidden = YES;
|
||||
}
|
||||
}
|
||||
|
||||
-(void)setOnlineUser:(QXRoomUserInfoModel *)onlineUser{
|
||||
_onlineUser = onlineUser;
|
||||
[self.headerImageView sd_setImageWithURL:[NSURL URLWithString:onlineUser.avatar]];
|
||||
self.nameLabel.text = onlineUser.nickname;
|
||||
if (onlineUser.sex.intValue == 1) {
|
||||
self.sexImageView.image = [UIImage imageNamed:@"user_sex_boy"];
|
||||
self.sexImageView.hidden = NO;
|
||||
}else if(onlineUser.sex.intValue == 2){
|
||||
self.sexImageView.image = [UIImage imageNamed:@"user_sex_girl"];
|
||||
self.sexImageView.hidden = NO;
|
||||
}else{
|
||||
self.sexImageView.hidden = YES;
|
||||
}
|
||||
|
||||
|
||||
if (onlineUser.role.intValue == 1) {
|
||||
self.roleLabel.text = QXText(@"房主");
|
||||
}else if(onlineUser.role.intValue == 2) {
|
||||
self.roleLabel.text = QXText(@"管理");
|
||||
}else if(onlineUser.role.intValue == 3) {
|
||||
self.roleLabel.text = QXText(@"主持");
|
||||
}else{
|
||||
self.roleLabel.text = QXText(@"观众");
|
||||
}
|
||||
|
||||
if (onlineUser.pit_number.intValue > 0) {
|
||||
[self.removeBtn setTitleColor:RGB16(0x666666) forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setBackgroundImage:nil forState:(UIControlStateNormal)];
|
||||
self.removeBtn.titleLabel.font = [UIFont systemFontOfSize:14];
|
||||
self.removeBtn.backgroundColor = [UIColor clearColor];
|
||||
[self.removeBtn setTitle:[NSString stringWithFormat:@"%@号麦",onlineUser.pit_number] forState:(UIControlStateNormal)];
|
||||
if (onlineUser.pit_number.intValue == 10) {
|
||||
[self.removeBtn setTitle:[NSString stringWithFormat:@"%@麦",QXText(@"嘉宾")] forState:(UIControlStateNormal)];
|
||||
}
|
||||
if (onlineUser.pit_number.intValue == 9) {
|
||||
[self.removeBtn setTitle:[NSString stringWithFormat:@"%@麦",QXText(@"主持")] forState:(UIControlStateNormal)];
|
||||
}
|
||||
}else{
|
||||
if (self.cellType == QXBlackListCellTypeHugSeat) {
|
||||
[self.removeBtn setTitleColor:QXConfig.themeColor forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setBackgroundImage:nil forState:(UIControlStateNormal)];
|
||||
self.removeBtn.titleLabel.font = [UIFont systemFontOfSize:14];
|
||||
self.removeBtn.backgroundColor = [UIColor clearColor];
|
||||
[self.removeBtn setTitle:@"抱麦" forState:(UIControlStateNormal)];
|
||||
}else{
|
||||
[self.removeBtn setTitle:@"" forState:(UIControlStateNormal)];
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
if (onlineUser.icon.count > 0) {
|
||||
self.iconBgView.hidden = NO;
|
||||
for (int i = 0;i < self.onlineUser.icon.count;i++) {
|
||||
if (i < 3) {
|
||||
UIImageView *iconImageView = self.iconViewArray[i];
|
||||
iconImageView.hidden = NO;
|
||||
[iconImageView sd_setImageWithURL:[NSURL URLWithString:self.onlineUser.icon[i]]];
|
||||
}
|
||||
}
|
||||
}else{
|
||||
self.iconBgView.hidden = YES;
|
||||
}
|
||||
}
|
||||
-(void)setRankModel:(QXRoomOnlineList *)rankModel{
|
||||
_rankModel = rankModel;
|
||||
[self.headerImageView sd_setImageWithURL:[NSURL URLWithString:rankModel.avatar]];
|
||||
self.nameLabel.text = rankModel.nickname;
|
||||
if (rankModel.sex.intValue == 1) {
|
||||
self.sexImageView.image = [UIImage imageNamed:@"user_sex_boy"];
|
||||
self.sexImageView.hidden = NO;
|
||||
}else if(rankModel.sex.intValue == 2){
|
||||
self.sexImageView.image = [UIImage imageNamed:@"user_sex_girl"];
|
||||
self.sexImageView.hidden = NO;
|
||||
}else{
|
||||
self.sexImageView.hidden = YES;
|
||||
}
|
||||
|
||||
if (rankModel.icon.count > 0) {
|
||||
self.iconBgView.hidden = NO;
|
||||
for (int i = 0;i < rankModel.icon.count;i++) {
|
||||
if (i < 3) {
|
||||
UIImageView *iconImageView = self.iconViewArray[i];
|
||||
iconImageView.hidden = NO;
|
||||
[iconImageView sd_setImageWithURL:[NSURL URLWithString:rankModel.icon[i]]];
|
||||
}
|
||||
}
|
||||
}else{
|
||||
self.iconBgView.hidden = YES;
|
||||
}
|
||||
|
||||
[self.removeBtn setTitle:[NSString stringWithFormat:@" %@",rankModel.total?rankModel.total:rankModel.gift_prices] forState:(UIControlStateNormal)];
|
||||
}
|
||||
-(void)setCellType:(QXBlackListCellType)cellType{
|
||||
_cellType = cellType;
|
||||
switch (cellType) {
|
||||
case QXBlackListCellTypeBlack:{
|
||||
[self.removeBtn setTitle:QXText(@"移除") forState:(UIControlStateNormal)];
|
||||
UIImage *norImage = [UIImage imageWithColor:RGB16(0x333333)];
|
||||
[self.removeBtn setBackgroundImage:norImage forState:(UIControlStateNormal)];
|
||||
}
|
||||
break;
|
||||
case QXBlackListCellTypeFans:{
|
||||
[self.removeBtn setTitle:QXText(@"回关") forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setTitleColor:QXConfig.btnTextColor forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setTitle:QXText(@"已互关") forState:(UIControlStateSelected)];
|
||||
UIImage *norImage = [UIImage imageWithColor:QXConfig.themeColor];
|
||||
[self.removeBtn setBackgroundImage:norImage forState:(UIControlStateNormal)];
|
||||
UIImage *selImage = [UIImage imageWithColor:RGB16(0xEFF2F8)];
|
||||
[self.removeBtn setBackgroundImage:selImage forState:(UIControlStateSelected)];
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
case QXBlackListCellTypeFocus:{
|
||||
[self.removeBtn setTitle:QXText(@"关注") forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setTitleColor:QXConfig.btnTextColor forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setTitle:QXText(@"已关注") forState:(UIControlStateSelected)];
|
||||
UIImage *norImage = [UIImage imageWithColor:QXConfig.themeColor];
|
||||
[self.removeBtn setBackgroundImage:norImage forState:(UIControlStateNormal)];
|
||||
UIImage *selImage = [UIImage imageWithColor:RGB16(0xEFF2F8)];
|
||||
[self.removeBtn setBackgroundImage:selImage forState:(UIControlStateSelected)];
|
||||
}
|
||||
break;
|
||||
|
||||
case QXBlackListCellTypeLogin:{
|
||||
[self.removeBtn setTitle:QXText(@"登录") forState:(UIControlStateNormal)];
|
||||
UIImage *norImage = [UIImage imageWithColor:QXConfig.themeColor];
|
||||
[self.removeBtn setBackgroundImage:norImage forState:(UIControlStateNormal)];
|
||||
}
|
||||
break;
|
||||
case QXBlackListCellTypeOnline:{
|
||||
[self.removeBtn setTitleColor:RGB16(0x666666) forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setBackgroundImage:nil forState:(UIControlStateNormal)];
|
||||
self.removeBtn.titleLabel.font = [UIFont systemFontOfSize:14];
|
||||
self.removeBtn.backgroundColor = [UIColor clearColor];
|
||||
self.roleLabel.hidden = NO;
|
||||
}
|
||||
break;
|
||||
case QXBlackListCellTypeHugSeat:{
|
||||
[self.removeBtn setTitleColor:RGB16(0x666666) forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setBackgroundImage:nil forState:(UIControlStateNormal)];
|
||||
self.removeBtn.titleLabel.font = [UIFont systemFontOfSize:14];
|
||||
self.removeBtn.backgroundColor = [UIColor clearColor];
|
||||
self.roleLabel.hidden = NO;
|
||||
}
|
||||
break;
|
||||
case QXBlackListCellTypeRank:{
|
||||
self.titleLabel.hidden = NO;
|
||||
self.headerLeftConstraint.constant = 44;
|
||||
self.nameLabel.textColor = RGB16(0xffffff);
|
||||
[self.removeBtn setTitleColor:RGB16(0xffffff) forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setBackgroundImage:nil forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setImage:[UIImage imageNamed:@"room_rank_value_icon"] forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setTitle:@" 0" forState:(UIControlStateNormal)];
|
||||
self.removeBtn.titleLabel.font = [UIFont systemFontOfSize:14];
|
||||
self.removeBtn.backgroundColor = [UIColor clearColor];
|
||||
}
|
||||
break;
|
||||
case QXBlackListCellTypeVisit:{
|
||||
[self.removeBtn setTitle:QXText(@"关注") forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setTitleColor:QXConfig.btnTextColor forState:(UIControlStateNormal)];
|
||||
[self.removeBtn setTitle:QXText(@"已关注") forState:(UIControlStateSelected)];
|
||||
UIImage *norImage = [UIImage imageWithColor:QXConfig.themeColor];
|
||||
[self.removeBtn setBackgroundImage:norImage forState:(UIControlStateNormal)];
|
||||
UIImage *selImage = [UIImage imageWithColor:RGB16(0xEFF2F8)];
|
||||
[self.removeBtn setBackgroundImage:selImage forState:(UIControlStateSelected)];
|
||||
self.removeBtn.hidden = YES;
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
- (void)awakeFromNib {
|
||||
[super awakeFromNib];
|
||||
// Initialization code
|
||||
CGFloat iconWidth = 38;
|
||||
CGFloat iconHeight = 16;
|
||||
CGFloat margin = 6;
|
||||
for (int i = 0; i < 3; i++) {
|
||||
UIImageView *iconImageView = [[UIImageView alloc] init];
|
||||
iconImageView.hidden = YES;
|
||||
[self.iconBgView addSubview:iconImageView];
|
||||
[iconImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.left.mas_equalTo(i*(iconWidth+margin));
|
||||
make.width.mas_equalTo(iconWidth);
|
||||
make.height.mas_equalTo(iconHeight);
|
||||
make.centerY.equalTo(self.iconBgView);
|
||||
}];
|
||||
[self.iconViewArray addObject:iconImageView];
|
||||
}
|
||||
|
||||
}
|
||||
-(NSMutableArray *)iconViewArray{
|
||||
if (!_iconViewArray) {
|
||||
_iconViewArray = [NSMutableArray array];
|
||||
}
|
||||
return _iconViewArray;
|
||||
}
|
||||
|
||||
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
|
||||
[super setSelected:selected animated:animated];
|
||||
|
||||
// Configure the view for the selected state
|
||||
}
|
||||
|
||||
@end
|
||||
Reference in New Issue
Block a user