FamilyListCell.m 5.4 KB

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