SocietyMemberCell.m 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. //
  2. // SocietyMemberCell.m
  3. // BuguLive
  4. //
  5. // Created by 王珂 on 17/1/22.
  6. // Copyright © 2017年 xfg. All rights reserved.
  7. //
  8. #import "SocietyMemberCell.h"
  9. #import "SocietyMemberModel.h"
  10. @interface SocietyMemberCell()
  11. @property (weak, nonatomic) IBOutlet UIImageView *headImgView;
  12. @property (weak, nonatomic) IBOutlet UILabel *nameLabel;
  13. @property (weak, nonatomic) IBOutlet UIImageView *sexImgView;
  14. @property (weak, nonatomic) IBOutlet UIImageView *rankImgView;
  15. @property (weak, nonatomic) IBOutlet UILabel *commentLabel;
  16. @property (weak, nonatomic) IBOutlet UIButton *kickOutBtn;
  17. @property (nonatomic, strong) UILabel *nameLabel2;
  18. @property (nonatomic, strong) UIImageView *sexImgView2;
  19. @property (nonatomic, strong) UIImageView *rankImgView2;
  20. //@property (nonatomic, strong) UIImageView * societyHeaderView;
  21. @property (nonatomic, strong) UILabel * societyHeaderLabel;
  22. @property (nonatomic, copy) NSString *user_id;
  23. @end
  24. @implementation SocietyMemberCell
  25. + (instancetype)cellWithTableView:(UITableView *)tableView
  26. {
  27. static NSString *ID = @"SocietyMemberCell";
  28. SocietyMemberCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];
  29. if (cell == nil) {
  30. cell = [[[NSBundle mainBundle] loadNibNamed:NSStringFromClass([SocietyMemberCell class]) owner:nil options:nil] lastObject];
  31. }
  32. return cell;
  33. }
  34. - (void)awakeFromNib
  35. {
  36. [super awakeFromNib];
  37. self.nameLabel.hidden = YES;
  38. self.nameLabel2 = [[UILabel alloc]init];
  39. [self.contentView addSubview:self.nameLabel2];
  40. self.sexImgView.hidden = YES;
  41. self.sexImgView2 = [[UIImageView alloc]init];
  42. [self.contentView addSubview:self.sexImgView2];
  43. self.rankImgView.hidden = YES;
  44. self.rankImgView2 = [[UIImageView alloc]init];
  45. [self.contentView addSubview:self.rankImgView2];
  46. self.societyHeaderLabel = [[UILabel alloc] init];
  47. self.societyHeaderLabel.backgroundColor = kAppMainColor;
  48. self.societyHeaderLabel.textColor = [UIColor whiteColor];
  49. self.societyHeaderLabel.textAlignment = NSTextAlignmentCenter;
  50. self.societyHeaderLabel.font = [UIFont systemFontOfSize:13];
  51. self.societyHeaderLabel.hidden = YES;
  52. [self.contentView addSubview:self.societyHeaderLabel];
  53. self.lineView = [[UIView alloc]initWithFrame:CGRectMake(0, 59, kScreenW, 1)];
  54. self.lineView.backgroundColor = myTextColorLine5;
  55. [self.contentView addSubview:self.lineView];
  56. self.headImgView.layer.cornerRadius = 20;
  57. self.headImgView.layer.masksToBounds = YES;
  58. self.commentLabel.textColor = myTextColorLine3;
  59. self.kickOutBtn.backgroundColor = kAppMainColor;
  60. self.kickOutBtn.layer.cornerRadius = 15;
  61. self.kickOutBtn.layer.masksToBounds = YES;
  62. self.kickOutBtn.hidden = YES;
  63. self.kickOutBtn.enabled = NO;
  64. }
  65. - (void)creatCellWithModel:(SocietyMemberModel *)model WithRow:(int)row
  66. {
  67. self.user_id = model.user_id;
  68. [self.headImgView sd_setImageWithURL:[NSURL URLWithString:model.head_image] placeholderImage:kDefaultPreloadHeadImg];
  69. if (model.nick_name.length < 1)
  70. {
  71. model.nick_name = ASLocalizedString(@"暂时还未命名");
  72. }
  73. self.nameLabel2.textColor = kGrayTransparentColor6;
  74. NSMutableAttributedString *attr = [[NSMutableAttributedString alloc] initWithString:model.nick_name];
  75. [attr setAttributes:@{NSFontAttributeName : [UIFont systemFontOfSize:15.0]} range:NSMakeRange(0, model.nick_name.length)];
  76. CGFloat width =[model.nick_name sizeWithAttributes:@{NSFontAttributeName:[UIFont systemFontOfSize:15]}].width;
  77. if (width+ 85 > kScreenW-155)//名字控件需要控制长度
  78. {
  79. width = kScreenW - 155-85;
  80. self.nameLabel2.lineBreakMode = NSLineBreakByTruncatingTail;
  81. }
  82. self.nameLabel2.frame = CGRectMake(60, 6, width, 21);
  83. self.sexImgView2.frame = CGRectMake(width+65, 9, 14, 14);
  84. self.rankImgView2.frame = CGRectMake(width+84, 8, 28, 16);
  85. self.societyHeaderLabel.frame = CGRectMake(CGRectGetMaxX(_rankImgView2.frame)+5, 8, 28, 16);
  86. self.nameLabel2.attributedText = attr;
  87. if ([model.sex isEqualToString:@"1"])
  88. {
  89. self.sexImgView2.image = [UIImage imageNamed:@"com_male_selected"];
  90. }else
  91. {
  92. self.sexImgView2.image = [UIImage imageNamed:@"com_female_selected"];
  93. }
  94. self.rankImgView2.image = [UIImage imageNamed:[NSString stringWithFormat:@"level%d",(int)model.user_level]];
  95. if (model.signature.length < 1)
  96. {
  97. self.commentLabel.text = @"";
  98. }else
  99. {
  100. self.commentLabel.lineBreakMode = NSLineBreakByTruncatingTail;
  101. NSMutableAttributedString *attr1 = [[NSMutableAttributedString alloc] initWithString:model.signature];
  102. self.commentLabel.attributedText = attr1;
  103. }
  104. if ([model.society_chieftain isEqualToString:@"1"]) {
  105. self.societyHeaderLabel.text = ASLocalizedString(@"会长");
  106. self.societyHeaderLabel.hidden = NO;
  107. }
  108. else
  109. {
  110. self.societyHeaderLabel.hidden = YES;
  111. }
  112. //如果是公会会长,并且对应的cell的公会成员不是会长本人时,显示踢出公会的按钮
  113. if (self.isSocietyHeader == 1 && [model.society_chieftain isEqualToString:@"0"]) {
  114. self.kickOutBtn.hidden = NO;
  115. self.kickOutBtn.enabled = YES;
  116. // [_kickOutBtn setTitle:ASLocalizedString(@"踢出公会")forState:UIControlStateNormal];
  117. }
  118. else
  119. {
  120. self.kickOutBtn.hidden = YES;
  121. }
  122. }
  123. - (IBAction)kickOutMember:(UIButton *)sender {
  124. //踢出公会,做删除操作
  125. if (_delegate && [_delegate respondsToSelector:@selector(kickOutWithSocietyMemberCell:)]) {
  126. [_delegate kickOutWithSocietyMemberCell:self];
  127. }
  128. }
  129. @end