个人资料页修改

This commit is contained in:
chenshuanglin
2023-03-10 19:25:37 +08:00
parent 31ebead250
commit 1afc713743
4 changed files with 130 additions and 117 deletions

View File

@@ -55,9 +55,9 @@
- (void)initSubViewConstraints {
[self.backImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self.contentView).inset(15);
make.top.mas_equalTo(self.contentView);
make.bottom.mas_equalTo(self.contentView).offset(-15);
make.left.right.mas_equalTo(self.contentView).inset(0);
make.top.mas_equalTo(self.contentView).offset(12);
make.bottom.mas_equalTo(self.contentView).offset(-12);
}];
[self.titleLabel mas_makeConstraints:^(MASConstraintMaker *make) {
@@ -134,12 +134,7 @@
if (!_backImageView) {
_backImageView = [[UIImageView alloc] init];
_backImageView.userInteractionEnabled = YES;
_backImageView.layer.cornerRadius = 10;
_backImageView.backgroundColor =[ThemeColor appCellBackgroundColor];
_backImageView.layer.shadowColor = UIColorFromRGB(0xE4E4E4).CGColor;
_backImageView.layer.shadowOpacity = 1;
_backImageView.layer.shadowOffset = CGSizeMake(0, 2);
_backImageView.layer.shadowRadius = 8;
}
return _backImageView;
}

View File

@@ -92,7 +92,7 @@
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
if (indexPath.section == 0) {
return 115;
return 133;
} else if(indexPath.section == 1) {
CGFloat itemHeigh = 40 + 15;
if (self.clanDetailInfo.clan.elderUid.length > 0) {

View File

@@ -218,7 +218,7 @@
#pragma mark - JXCategoryViewDelegate
- (NSUInteger)tableHeaderViewHeightInPagerView:(JXPagerView *)pagerView {
return 440;
return 398;
}
- (UIView *)tableHeaderViewInPagerView:(JXPagerView *)pagerView {
@@ -420,7 +420,7 @@
if (!_titleView) {
_titleView = [[JXCategoryTitleView alloc] init];
_titleView.delegate = self;
_titleView.backgroundColor = [UIColor clearColor];
_titleView.backgroundColor = [UIColor whiteColor];
_titleView.titleColor = [ThemeColor textThirdColor];
_titleView.titleSelectedColor = [ThemeColor mainTextColor];
_titleView.titleFont = [UIFont fontWithName:@"PingFang-SC-Medium" size:12];

View File

@@ -18,6 +18,8 @@
#import "UIImage+Utils.h"
#import "NetImageView.h"
#import "NSArray+Safe.h"
#import "XCHUDTool.h"
#import "StatisticsServiceHelper.h"
///Model
#import "UserInfoModel.h"
@@ -36,11 +38,11 @@
@property (nonatomic,strong) NSMutableArray<UserPhoto *> *userPhtotArray;
///
@property (nonatomic,strong) UIView * userInfoView;
///
@property (nonatomic,strong) UIImageView *usershadowImageView;
///icon
@property (nonatomic,strong) NetImageView *nobleImageView;
@property (nonatomic,strong) UIStackView *nickStackView;
///
@property (nonatomic,strong) NetImageView *avatarImageView;
///
@property (nonatomic,strong) UILabel *nameLabel;
///sex
@@ -53,16 +55,14 @@
@property (nonatomic,strong) UIImageView *beautifulImageViw;
///id
@property (nonatomic,strong) UILabel *idLabel;
///
@property (nonatomic,strong) UIView * spaceView;
///id
@property (nonatomic,strong) UIImageView *copysIdImageView;
///
@property (nonatomic,strong) UILabel *fansNumLabel;
///
@property (nonatomic,strong) UIStackView *tagStackView;
///
@property (nonatomic,strong) NetImageView *charmImageView;
///icon
@property (nonatomic, strong) NetImageView *nobleIconImageView;
///
@property (nonatomic,strong) NetImageView *experImageView;
///
@@ -102,26 +102,25 @@
[self addSubview:self.coverImageView];
[self addSubview:self.reviewIcon];
[self addSubview:self.userInfoView];
[self addSubview:self.pageButton];
[self.userInfoView addSubview:self.usershadowImageView];
[self.userInfoView addSubview:self.avatarImageView];
[self.userInfoView addSubview:self.fansNumLabel];
[self.userInfoView addSubview:self.signBackView];
[self.userInfoView addSubview:self.lineView];
[self.usershadowImageView addSubview:self.nickStackView];
[self.usershadowImageView addSubview:self.idStackView];
[self.usershadowImageView addSubview:self.tagStackView];
[self.usershadowImageView addSubview:self.pageButton];
[self.usershadowImageView addSubview:self.nobleImageView];
[self.userInfoView addSubview:self.nickStackView];
[self.userInfoView addSubview:self.idStackView];
[self.userInfoView addSubview:self.tagStackView];
[self.nickStackView addArrangedSubview:self.nobleImageView];
[self.nickStackView addArrangedSubview:self.nameLabel];
[self.nickStackView addArrangedSubview:self.sexImageView];
[self.nickStackView addArrangedSubview:self.onlineButton];
[self.idStackView addArrangedSubview:self.beautifulImageViw];
[self.idStackView addArrangedSubview:self.idLabel];
[self.idStackView addArrangedSubview:self.spaceView];
[self.idStackView addArrangedSubview:self.fansNumLabel];
[self.idStackView addArrangedSubview:self.copysIdImageView];
///
[self.tagStackView addArrangedSubview:self.newUserImageView];
@@ -139,7 +138,7 @@
- (void)initSubViewConstraints {
[self.cycleScrollView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.top.mas_equalTo(self);
make.height.mas_equalTo(375);
make.height.mas_equalTo(237);
}];
[self.coverImageView mas_makeConstraints:^(MASConstraintMaker *make) {
@@ -155,25 +154,22 @@
[self.userInfoView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.mas_equalTo(self);
make.bottom.mas_equalTo(self);
make.height.mas_equalTo(210);
make.height.mas_equalTo(195);
}];
[self.usershadowImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.right.top.mas_equalTo(self.userInfoView);
make.height.mas_equalTo(146);
}];
[self.pageButton mas_makeConstraints:^(MASConstraintMaker *make) {
make.right.mas_equalTo(-15);
make.width.mas_equalTo(35);
make.height.mas_equalTo(16);
make.bottom.mas_equalTo(self.signBackView.mas_top).offset(-13);
make.width.mas_equalTo(42);
make.height.mas_equalTo(22);
make.bottom.mas_equalTo(self.userInfoView.mas_top).offset(-8);
}];
[self.signBackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.height.mas_equalTo(79);
make.left.right.mas_equalTo(self.userInfoView);
make.top.mas_equalTo(self.usershadowImageView.mas_bottom).offset(-15);
make.height.mas_equalTo(54);
make.left.mas_equalTo(15);
make.right.mas_equalTo(-15);
make.top.mas_equalTo(self.tagStackView.mas_bottom).offset(10);
}];
[self.lineView mas_makeConstraints:^(MASConstraintMaker *make) {
@@ -182,14 +178,22 @@
make.height.mas_equalTo(1);
}];
[self.avatarImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(22);
make.centerY.mas_equalTo(self.userInfoView.mas_top);
make.width.height.mas_equalTo(72);
}];
[self.fansNumLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.avatarImageView.mas_right).offset(12);
make.top.mas_equalTo(10);
}];
[self.nobleImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.usershadowImageView).offset(15);
make.top.mas_equalTo(self.usershadowImageView).offset(50);
make.width.height.mas_equalTo(20);
}];
[self.nickStackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.nobleImageView.mas_right).mas_offset(5);
make.centerY.mas_equalTo(self.nobleImageView);
make.left.mas_equalTo(18);
make.top.mas_equalTo(self.avatarImageView.mas_bottom).offset(10);
}];
[self.nameLabel mas_makeConstraints:^(MASConstraintMaker *make) {
@@ -205,7 +209,7 @@
}];
[self.idStackView mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.nobleImageView);
make.left.mas_equalTo(self.nickStackView);
make.top.mas_equalTo(self.nickStackView.mas_bottom).offset(5);
}];
@@ -213,15 +217,13 @@
make.size.mas_equalTo(CGSizeMake(15, 15));
}];
[self.spaceView mas_makeConstraints:^(MASConstraintMaker *make) {
make.width.mas_equalTo(22);
make.height.mas_equalTo(15);
[self.copysIdImageView mas_makeConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(10, 10));
}];
[self.tagStackView mas_makeConstraints:^(MASConstraintMaker *make) {
// make.left.mas_equalTo(self.usershadowImageView).offset(15);
make.left.mas_equalTo(self.nobleImageView);
make.top.mas_equalTo(self.beautifulImageViw.mas_bottom).offset(5);
make.left.mas_equalTo(self.nickStackView);
make.top.mas_equalTo(self.idStackView.mas_bottom).offset(5);
make.height.mas_equalTo(25);
}];
@@ -259,8 +261,9 @@
}];
[self.signLabel mas_makeConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.signBackView).offset(10);
make.top.mas_equalTo(self.signBackView).offset(23);
make.left.mas_equalTo(10);
make.right.mas_equalTo(-10);
make.centerY.mas_equalTo(0);
}];
}
@@ -299,36 +302,45 @@
[self.delegate xPMineUserInfoHeaderView:self didClickGoToRoom:self.roomUid];
}
}
- (void)copysIdRecognizer {
[UIPasteboard generalPasteboard].string = [NSString stringWithFormat:@"%ld", self.userInfo.erbanNo];
[XCHUDTool showSuccessWithMessage:@"复制成功"];
[StatisticsServiceHelper trackEventWithKey:StatisticsServiceEventID_mycenter_copyid_click];
}
#pragma mark - Getters And Setters
- (void)setUserInfo:(UserInfoModel *)userInfo {
_userInfo = userInfo;
if (_userInfo) {
self.avatarImageView.imageUrl = _userInfo.avatar;
self.nameLabel.text = _userInfo.nick;
self.idLabel.text = [NSString stringWithFormat:@"ID%ld", (long)_userInfo.erbanNo];
self.copysIdImageView.hidden = NO;
self.signLabel.text = _userInfo.userDesc.length > 0 ? _userInfo.userDesc : @"我是个默认签名";
self.fansNumLabel.text =[NSString stringWithFormat:@"%ld粉丝", _userInfo.fansNum];
NSString *fansNum = [NSString stringWithFormat:@"%ld",_userInfo.fansNum];
NSString *fansStr = [NSString stringWithFormat:@"粉丝 %@", fansNum];
NSMutableAttributedString *attrStr = [[NSMutableAttributedString alloc] initWithString:fansStr];
NSRange fansNumRange = NSMakeRange(attrStr.length - fansNum.length, fansNum.length);
[attrStr addAttribute:NSForegroundColorAttributeName value:[ThemeColor mainTextColor] range:fansNumRange];
self.fansNumLabel.attributedText = attrStr;
self.sexImageView.image = userInfo.gender == GenderType_Female ? [UIImage imageNamed:@"common_female"] : [UIImage imageNamed:@"common_male"];
self.officalImageView.hidden = userInfo.defUser != UserLevelType_Offical;
self.beautifulImageViw.hidden = !userInfo.hasPrettyErbanNo;
self.newUserImageView.hidden = !userInfo.newUser;
self.nobleImageView.imageUrl = userInfo.userVipInfoVO.vipIcon;
UIImage *nobleImage = self.nobleImageView.image;
if (nobleImage) {
CGFloat scale = nobleImage.size.width / nobleImage.size.height;
[self.nobleImageView loadImageWithUrl:userInfo.userVipInfoVO.vipIcon completion:^(UIImage * _Nonnull image, NSURL * _Nonnull url) {
if (image) {
CGFloat scale = image.size.width / image.size.height;
[self.nobleImageView mas_updateConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(20* scale, 20));
}];
[self.nickStackView mas_updateConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.nobleImageView.mas_right).mas_offset(5);
}];
self.nobleImageView.hidden = NO;
}else{
[self.nobleImageView mas_updateConstraints:^(MASConstraintMaker *make) {
make.size.mas_equalTo(CGSizeMake(0, 20));
}];
[self.nickStackView mas_updateConstraints:^(MASConstraintMaker *make) {
make.left.mas_equalTo(self.nobleImageView.mas_right);
}];
self.nobleImageView.hidden = YES;
}
}];
if (userInfo.userLevelVo.experUrl) {
self.experImageView.imageUrl = userInfo.userLevelVo.experUrl;
}
@@ -394,24 +406,20 @@
- (UIView *)userInfoView {
if (!_userInfoView) {
_userInfoView = [[UIView alloc] init];
_userInfoView.backgroundColor = [UIColor clearColor];
_userInfoView.layer.masksToBounds = YES;
_userInfoView.layer.cornerRadius = 12;
_userInfoView.backgroundColor = [UIColor whiteColor];
// _userInfoView.layer.masksToBounds = YES;
_userInfoView.layer.cornerRadius = 20;
// CAShapeLayer * layer = [CAShapeLayer layer];
// layer.path = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0, KScreenWidth, 79) byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight cornerRadii:CGSizeMake(12, 12)].CGPath;
// _signBackView.layer.mask = layer;
}
return _userInfoView;
}
- (UIImageView *)usershadowImageView {
if (!_usershadowImageView) {
_usershadowImageView = [[UIImageView alloc] init];
_usershadowImageView.userInteractionEnabled = YES;
}
return _usershadowImageView;
}
- (NetImageView *)nobleImageView {
if (!_nobleImageView) {
_nobleImageView = [[NetImageView alloc] init];
_nobleImageView.hidden = YES;
}
return _nobleImageView;
}
@@ -430,8 +438,8 @@
- (UILabel *)nameLabel {
if (!_nameLabel) {
_nameLabel = [[UILabel alloc] init];
_nameLabel.font = [UIFont fontWithName:@"PingFang-SC-Medium" size:15];
_nameLabel.textColor = [UIColor whiteColor];
_nameLabel.font = [UIFont systemFontOfSize:18 weight:UIFontWeightMedium];
_nameLabel.textColor = [ThemeColor mainTextColor];
}
return _nameLabel;
}
@@ -451,6 +459,9 @@
_idStackView.distribution = UIStackViewDistributionFill;
_idStackView.alignment = UIStackViewAlignmentCenter;
_idStackView.spacing = 5;
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(copysIdRecognizer)];
[_idStackView addGestureRecognizer:tap];
}
return _idStackView;
}
@@ -467,25 +478,17 @@
- (UILabel *)fansNumLabel {
if (!_fansNumLabel) {
_fansNumLabel = [[UILabel alloc] init];
_fansNumLabel.font = [UIFont systemFontOfSize:12];
_fansNumLabel.textColor = [UIColor whiteColor];
_fansNumLabel.font = [UIFont systemFontOfSize:13 weight:UIFontWeightMedium];
_fansNumLabel.textColor = [ThemeColor secondTextColor];
}
return _fansNumLabel;
}
- (UIView *)spaceView {
if (!_spaceView) {
_spaceView = [[UIView alloc] init];
_spaceView.backgroundColor = [UIColor clearColor];
}
return _spaceView;
}
- (UILabel *)idLabel {
if (!_idLabel) {
_idLabel = [[UILabel alloc] init];
_idLabel.font = [UIFont systemFontOfSize:11];
_idLabel.textColor = [UIColor whiteColor];
_idLabel.font = [UIFont systemFontOfSize:12];
_idLabel.textColor = [ThemeColor textThirdColor];
}
return _idLabel;
}
@@ -519,8 +522,10 @@
if (!_pageButton) {
_pageButton = [UIButton buttonWithType:UIButtonTypeCustom];
[_pageButton setTitleColor:[UIColor whiteColor] forState:UIControlStateNormal];
_pageButton.titleLabel.font = [UIFont systemFontOfSize:10];
[_pageButton setBackgroundImage:[UIImage imageNamed:@"mine_user_info_header_page_bg"] forState:UIControlStateNormal];
_pageButton.titleLabel.font = [UIFont systemFontOfSize:12];
_pageButton.backgroundColor = [UIColor.whiteColor colorWithAlphaComponent:0.2];
_pageButton.layer.cornerRadius = 11;
_pageButton.clipsToBounds = YES;
}
return _pageButton;
}
@@ -571,16 +576,6 @@
return _charmImageView;
}
- (NetImageView *)nobleIconImageView {
if (!_nobleIconImageView) {
NetImageConfig * config = [[NetImageConfig alloc] init];
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
config.imageType = ImageTypeUserCardLevel;
_nobleIconImageView = [[NetImageView alloc] initWithConfig:config];
_nobleIconImageView.contentMode = UIViewContentModeScaleAspectFit;
}
return _nobleIconImageView;
}
- (UIView *)namePlateView {
if (!_namePlateView) {
@@ -637,9 +632,7 @@
if (!_signBackView) {
_signBackView = [[UIView alloc] init];
_signBackView.backgroundColor = [ThemeColor appBackgroundColor];
CAShapeLayer * layer = [CAShapeLayer layer];
layer.path = [UIBezierPath bezierPathWithRoundedRect:CGRectMake(0, 0, KScreenWidth, 79) byRoundingCorners:UIRectCornerTopLeft | UIRectCornerTopRight cornerRadii:CGSizeMake(12, 12)].CGPath;
_signBackView.layer.mask = layer;
_signBackView.layer.cornerRadius = 4;
}
return _signBackView;
}
@@ -677,4 +670,29 @@
return _avatarPhoto;
}
- (NetImageView *)avatarImageView {
if (!_avatarImageView) {
NetImageConfig * config = [[NetImageConfig alloc] init];
config.placeHolder = [UIImageConstant defaultAvatarPlaceholder];
config.imageType = ImageTypeUserIcon;
_avatarImageView = [[NetImageView alloc] initWithConfig:config];
_avatarImageView.layer.masksToBounds = YES;
_avatarImageView.layer.cornerRadius = 36;
_avatarImageView.layer.borderWidth = 1;
_avatarImageView.layer.borderColor = UIColor.whiteColor.CGColor;
_avatarImageView.contentMode = UIViewContentModeScaleAspectFill;
}
return _avatarImageView;
}
- (UIImageView *)copysIdImageView {
if (!_copysIdImageView) {
_copysIdImageView = [[UIImageView alloc] init];
_copysIdImageView.userInteractionEnabled = YES;
_copysIdImageView.image = [UIImage imageNamed:@"mine_user_id_copy"];
_copysIdImageView.hidden = YES;
}
return _copysIdImageView;
}
@end