ASUserBaseInfoView.m 4.8 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. //
  2. // ASUserBaseInfoView.m
  3. // Asteria
  4. //
  5. // Created by iOS on 2023/5/15.
  6. //
  7. #import "ASUserBaseInfoView.h"
  8. @interface ASUserBaseInfoView ()
  9. @property (nonatomic, strong) UILabel *uNameLb;
  10. @property (nonatomic, strong) UILabel *emailLb;
  11. @property (nonatomic, strong) UIImageView *vipLevelV;
  12. @property (nonatomic, strong) UIStackView *stv;
  13. @end
  14. @implementation ASUserBaseInfoView
  15. - (void)setDemoData {
  16. [self.avaterV setUserHeadV:@"https://gimg2.baidu.com/image_search/src=http%3A%2F%2Fsafe-img.xhscdn.com%2Fbw1%2F5b342386-43ce-4ab5-bf30-c1bb7e2d85d8%3FimageView2%2F2%2Fw%2F1080%2Fformat%2Fjpg&refer=http%3A%2F%2Fsafe-img.xhscdn.com&app=2002&size=f9999,10000&q=a80&n=0&g=0n&fmt=auto?sec=1690257640&t=8bdb74b6b68e2eeb05e1ab74bf6647ab" uName:@"new"];//@"https://www.shijuepi.com/uploads/allimg/201103/1-201103104255.jpg"
  17. self.uNameLb.text = @"new";
  18. self.vipLevelV.image = [UIImage imageNamed:@"uc_vip_level_1"];
  19. self.uNameLb.text = @"new";
  20. self.emailLb.text = @"653462314@qq.com";
  21. self.usefualLb.text = @"300 points";
  22. }
  23. - (instancetype)initWithFrame:(CGRect)frame {
  24. self = [super initWithFrame:frame];
  25. if (self) {
  26. self.backgroundColor = UIColor.clearColor;
  27. [self loadSubV];
  28. [self setDemoData];
  29. }
  30. return self;
  31. }
  32. - (void)loadSubV {
  33. [self addSubview:self.avaterV];
  34. self.stv = [UIStackView baseStackV:true];
  35. self.stv.spacing = 4;
  36. self.stv.distribution = UIStackViewDistributionFill;
  37. [self addSubview:self.stv];
  38. [self.stv addArrangedSubview:self.uNameLb];
  39. [self.stv addArrangedSubview:self.emailLb];
  40. UIView *levelBgV = [UIView baseV];
  41. levelBgV.backgroundColor = UIColor.clearColor;
  42. [self.stv addArrangedSubview:levelBgV];
  43. [self.stv addArrangedSubview:self.usefualLb];
  44. [levelBgV mas_makeConstraints:^(MASConstraintMaker *make) {
  45. make.height.equalTo(@16);
  46. }];
  47. [levelBgV addSubview:self.vipLevelV];
  48. [self.vipLevelV mas_makeConstraints:^(MASConstraintMaker *make) {
  49. make.top.leading.bottom.equalTo(levelBgV);
  50. }];
  51. [self setSubVMas];
  52. }
  53. - (void)setSubVMas {
  54. [self.uNameLb mas_makeConstraints:^(MASConstraintMaker *make) {
  55. make.height.equalTo(@17);
  56. }];
  57. [self.emailLb mas_makeConstraints:^(MASConstraintMaker *make) {
  58. make.height.greaterThanOrEqualTo(@14);
  59. }];
  60. [self.usefualLb mas_makeConstraints:^(MASConstraintMaker *make) {
  61. make.height.equalTo(@17);
  62. }];
  63. [self.avaterV mas_makeConstraints:^(MASConstraintMaker *make) {
  64. make.width.height.equalTo(@100);
  65. make.top.leading.bottom.equalTo(self);
  66. }];
  67. [self.stv mas_makeConstraints:^(MASConstraintMaker *make) {
  68. make.top.equalTo(self.avaterV.mas_top).offset(10);
  69. make.leading.equalTo(self.avaterV.mas_trailing).offset(10);
  70. make.trailing.equalTo(self);
  71. make.bottom.equalTo(self.avaterV.mas_bottom).offset(-10);
  72. }];
  73. }
  74. - (void)reSetSubVMas {
  75. [self.uNameLb mas_makeConstraints:^(MASConstraintMaker *make) {
  76. make.height.equalTo(@22);
  77. }];
  78. [self.emailLb mas_makeConstraints:^(MASConstraintMaker *make) {
  79. make.height.equalTo(@17);
  80. }];
  81. [self.usefualLb mas_makeConstraints:^(MASConstraintMaker *make) {
  82. make.height.equalTo(@17);
  83. }];
  84. [self.avaterV setCorner:8];
  85. [self.avaterV mas_makeConstraints:^(MASConstraintMaker *make) {
  86. make.width.height.equalTo(@88);
  87. make.top.leading.bottom.equalTo(self);
  88. }];
  89. [self.stv mas_makeConstraints:^(MASConstraintMaker *make) {
  90. make.top.equalTo(self.avaterV.mas_top).offset(0);
  91. make.leading.equalTo(self.avaterV.mas_trailing).offset(10);
  92. make.trailing.equalTo(self);
  93. make.bottom.equalTo(self.avaterV.mas_bottom).offset(0);
  94. }];
  95. }
  96. - (UIImageView *)vipLevelV {
  97. if (!_vipLevelV) {
  98. UIImageView *v = [[UIImageView alloc] init];
  99. v.contentMode = UIViewContentModeScaleAspectFit;
  100. _vipLevelV = v;
  101. }
  102. return _vipLevelV;
  103. }
  104. - (ASUserAvaterView *)avaterV {
  105. if (!_avaterV) {
  106. ASUserAvaterView *v = [[ASUserAvaterView alloc] initWithFrame:CGRectMake(0, 0, 100, 100)];
  107. _avaterV = v;
  108. }
  109. return _avaterV;
  110. }
  111. - (UILabel *)uNameLb {
  112. if (!_uNameLb) {
  113. UILabel *lb = [UILabel baseLb];
  114. lb.font = [UIFont fontWithName:Rob_Bold size:14];
  115. lb.textColor = Col_000;
  116. _uNameLb = lb;
  117. }
  118. return _uNameLb;
  119. }
  120. - (UILabel *)emailLb {
  121. if (!_emailLb) {
  122. UILabel *lb = [UILabel baseLb];
  123. lb.font = [UIFont fontWithName:Rob_Regular size:12];
  124. lb.textColor = Col_000;
  125. _emailLb = lb;
  126. }
  127. return _emailLb;
  128. }
  129. - (UILabel *)usefualLb {
  130. if (!_usefualLb) {
  131. UILabel *lb = [UILabel baseLb];
  132. lb.font = [UIFont fontWithName:Rob_Bold size:14];
  133. lb.textColor = Col_000;
  134. _usefualLb = lb;
  135. }
  136. return _usefualLb;
  137. }
  138. @end