fix: 修正我的 tab 渲染卡主线程问题 | 修正靓号 ID centerY 对齐
This commit is contained in:
@@ -39,7 +39,7 @@
|
||||
make.trailing.mas_equalTo(self).offset(-26);
|
||||
}
|
||||
|
||||
make.centerY.mas_equalTo(self);
|
||||
make.centerY.mas_equalTo(self).offset(0.8);
|
||||
}];
|
||||
|
||||
[self.copiedImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
@@ -55,7 +55,7 @@
|
||||
self.numLabel.text = num;
|
||||
|
||||
UIImage *longBackgroundImage = [UIImage imageNamed:@"user_info_id_beatiful_mark_short"];
|
||||
UIEdgeInsets capInsets = UIEdgeInsetsMake(0, 20, 0, 14);
|
||||
UIEdgeInsets capInsets = UIEdgeInsetsMake(0, 27, 0, 14);
|
||||
UIImage *resizableImage = [longBackgroundImage resizableImageWithCapInsets:capInsets resizingMode:UIImageResizingModeStretch];
|
||||
self.frameImageView.image = resizableImage;
|
||||
}
|
||||
|
||||
@@ -38,7 +38,7 @@ typedef void(^CompletionHandler)(NSMutableAttributedString *);
|
||||
@property (nonatomic, assign) NSInteger visitorUnReadCount;
|
||||
|
||||
///当装扮铭牌时,我的页面中不需要显示铭牌标识
|
||||
- (void)createNamePlateLevelAttribute:(UserInfoModel *)userInfo complete:(CompletionHandler)complete;
|
||||
- (void)createNamePlateLevelAttribute:(UserInfoModel *)userInfo;// complete:(CompletionHandler)complete;
|
||||
///id
|
||||
- (NSMutableAttributedString *)createNamePlateIdLabelAttribute:(UserInfoModel *)userInfo ;
|
||||
@end
|
||||
|
||||
@@ -41,6 +41,12 @@
|
||||
|
||||
///显示等级
|
||||
@property (nonatomic,strong) YYLabel *levelLabel;
|
||||
|
||||
@property (nonatomic,strong) NetImageView *experImageView;
|
||||
@property (nonatomic,strong) NetImageView *charmImageView;
|
||||
//@property (nonatomic,strong) NetImageView *nameplateImageView;
|
||||
//@property (nonatomic,strong) UILabel *nameplateLabel;
|
||||
|
||||
///关注、粉丝的容器
|
||||
@property (nonatomic,strong) UIStackView *attentionStackView;
|
||||
///关注
|
||||
@@ -97,6 +103,8 @@
|
||||
[_stackView addArrangedSubview:self.nobleEntranceView];
|
||||
[_stackView addArrangedSubview:self.agencyView];
|
||||
|
||||
[self addSubview:self.experImageView];
|
||||
[self addSubview:self.charmImageView];
|
||||
|
||||
[self.avatarImageView addSubview:self.reviewView];
|
||||
UITapGestureRecognizer * tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapAvatarImageView)];
|
||||
@@ -131,6 +139,20 @@
|
||||
make.top.mas_equalTo(self.idStackView.mas_bottom).offset(5);
|
||||
}];
|
||||
|
||||
[self.experImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.mas_equalTo(self.nameStackView);
|
||||
make.top.mas_equalTo(self.idStackView.mas_bottom).offset(5);
|
||||
make.width.mas_equalTo(0);
|
||||
make.height.mas_equalTo(20);
|
||||
}];
|
||||
|
||||
[self.charmImageView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.leading.mas_equalTo(self.experImageView.mas_trailing).offset(8);
|
||||
make.top.mas_equalTo(self.idStackView.mas_bottom).offset(5);
|
||||
make.width.mas_equalTo(0);
|
||||
make.height.mas_equalTo(20);
|
||||
}];
|
||||
|
||||
[self.attentionStackView mas_makeConstraints:^(MASConstraintMaker *make) {
|
||||
make.top.mas_equalTo(self.avatarImageView.mas_bottom).mas_offset(16);
|
||||
make.height.mas_equalTo(60);
|
||||
@@ -214,7 +236,7 @@
|
||||
NetImageConfig *config = [[NetImageConfig alloc]init];
|
||||
///先这样吧
|
||||
config.autoLoad = YES;
|
||||
NetImageView *imageView = [[NetImageView alloc]initWithUrl:imageUrl config:config];
|
||||
NetImageView *imageView = [[NetImageView alloc] initWithUrl:imageUrl config:config];
|
||||
UIImage* image = imageView.image;
|
||||
if (image) {
|
||||
CGFloat height = image.size.height > 0 ? image.size.height : 1;
|
||||
@@ -320,32 +342,33 @@
|
||||
attachment.bounds = CGRectMake(0, roundf(font.capHeight - iconImage.size.height)/2.f, iconImage.size.width, iconImage.size.height);
|
||||
attachment.image = iconImage;
|
||||
[textAtt insertAttributedString:[NSMutableAttributedString attributedStringWithAttachment:attachment] atIndex:textAtt.length];
|
||||
self.idLabel.attributedText = textAtt;
|
||||
return textAtt;
|
||||
}
|
||||
|
||||
///当装扮铭牌时,我的页面中不需要显示铭牌标识
|
||||
- (void)createNamePlateLevelAttribute:(UserInfoModel *)userInfo complete:(nonnull CompletionHandler)complete{
|
||||
- (void)createNamePlateLevelAttribute:(UserInfoModel *)userInfo {// complete:(nonnull CompletionHandler)complete{
|
||||
NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc] init];
|
||||
if (!userInfo) {
|
||||
if(complete){
|
||||
complete(attributedString);
|
||||
}
|
||||
// if(complete){
|
||||
// complete(attributedString);
|
||||
// }
|
||||
return;
|
||||
}
|
||||
|
||||
// if(userInfo.isCertified == YES){
|
||||
// //主播认证
|
||||
// if (userInfo.nameplatePic.length > 0) {
|
||||
// [self createNameplateAttibuteWithImage:userInfo.nameplatePic];
|
||||
// [attributedString appendAttributedString:[self createSpaceAttribute:2]];
|
||||
// }
|
||||
// }else{
|
||||
// //主播认证
|
||||
// if (userInfo.nameplateWord.length > 0 && userInfo.nameplatePic.length>0) {
|
||||
// [self createNameplateAttibute:userInfo.nameplateWord image:userInfo.nameplatePic textFont:[UIFont systemFontOfSize:9]];
|
||||
// [attributedString appendAttributedString:[self createSpaceAttribute:2]];
|
||||
// }
|
||||
// }
|
||||
if(userInfo.isCertified == YES){
|
||||
//主播认证
|
||||
if (userInfo.nameplatePic.length > 0) {
|
||||
[self createNameplateAttibuteWithImage:userInfo.nameplatePic];
|
||||
[attributedString appendAttributedString:[self createSpaceAttribute:2]];
|
||||
}
|
||||
}else{
|
||||
//主播认证
|
||||
if (userInfo.nameplateWord.length > 0 && userInfo.nameplatePic.length>0) {
|
||||
[self createNameplateAttibute:userInfo.nameplateWord image:userInfo.nameplatePic textFont:[UIFont systemFontOfSize:9]];
|
||||
[attributedString appendAttributedString:[self createSpaceAttribute:2]];
|
||||
}
|
||||
}
|
||||
|
||||
// userRank 用户级别
|
||||
if (userInfo.userLevelVo.experUrl) {
|
||||
@@ -359,16 +382,18 @@
|
||||
[attributedString appendAttributedString:[self createSpaceAttribute:4]];
|
||||
}
|
||||
|
||||
if(complete){
|
||||
complete(attributedString);
|
||||
}
|
||||
// if(complete){
|
||||
// complete(attributedString);
|
||||
// }
|
||||
|
||||
self.levelLabel.attributedText = attributedString;
|
||||
}
|
||||
|
||||
#pragma mark - Getters And Setters
|
||||
- (void)setUserInfo:(UserInfoModel *)userInfo {
|
||||
_userInfo = userInfo;
|
||||
if (_userInfo) {
|
||||
self.idLabel.attributedText = userInfo.idAtt;
|
||||
|
||||
self.nameLabel.text = _userInfo.nick.length > 0 ? _userInfo.nick : @"";
|
||||
self.avatarImageView.imageUrl = userInfo.avatar;
|
||||
if (userInfo.isReview) {
|
||||
@@ -384,10 +409,55 @@
|
||||
self.sexImageView.selected = _userInfo.gender != GenderType_Male;
|
||||
self.sexImageView.titleEdgeInsets = _userInfo.gender != GenderType_Male ? UIEdgeInsetsMake(0, 2, 0, 0):UIEdgeInsetsMake(0, -1, 0, 0);
|
||||
|
||||
self.levelLabel.attributedText = _userInfo.levelAtt;
|
||||
// self.levelLabel.attributedText = _userInfo.levelAtt;
|
||||
|
||||
self.fansView.number = [NSString stringWithFormat:@"%ld",_userInfo.fansNum];
|
||||
self.attentionView.number = [NSString stringWithFormat:@"%ld",_userInfo.followNum];
|
||||
|
||||
// self.nameplateImageView.imageUrl = _userInfo.nameplatePic;
|
||||
|
||||
@kWeakify(self);
|
||||
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.25 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
||||
@kStrongify(self);
|
||||
@kWeakify(self);
|
||||
[self.experImageView loadImageWithUrl:self.userInfo.userLevelVo.experUrl completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
|
||||
@kStrongify(self);
|
||||
self.experImageView.image = image;
|
||||
CGFloat scale = 0;
|
||||
if (image) {
|
||||
CGFloat height = image.size.height > 0 ? image.size.height : 1;
|
||||
scale = image.size.width / height ;
|
||||
}
|
||||
else {
|
||||
NSURL *imgUrl = [NSURL URLWithString:self.userInfo.userLevelVo.experUrl];
|
||||
UIImage *myImage = [UIImage imageWithData:[NSData dataWithContentsOfURL:imgUrl]];
|
||||
CGFloat height = myImage.size.height > 0 ? myImage.size.height : 1;
|
||||
scale = myImage.size.width / height;
|
||||
}
|
||||
[self.experImageView mas_updateConstraints:^(MASConstraintMaker *make) {
|
||||
make.width.mas_equalTo(20 * scale);
|
||||
}];
|
||||
}];
|
||||
|
||||
[self.charmImageView loadImageWithUrl:self.userInfo.userLevelVo.charmUrl completion:^(UIImage * _Nullable image, NSURL * _Nonnull url) {
|
||||
@kStrongify(self);
|
||||
self.charmImageView.image = image;
|
||||
CGFloat scale = 0;
|
||||
if (image) {
|
||||
CGFloat height = image.size.height > 0 ? image.size.height : 1;
|
||||
scale = image.size.width / height ;
|
||||
}
|
||||
else {
|
||||
NSURL *imgUrl = [NSURL URLWithString:self.userInfo.userLevelVo.experUrl];
|
||||
UIImage *myImage = [UIImage imageWithData:[NSData dataWithContentsOfURL:imgUrl]];
|
||||
CGFloat height = myImage.size.height > 0 ? myImage.size.height : 1;
|
||||
scale = myImage.size.width / height;
|
||||
}
|
||||
[self.charmImageView mas_updateConstraints:^(MASConstraintMaker *make) {
|
||||
make.width.mas_equalTo(20 * scale);
|
||||
}];
|
||||
}];
|
||||
});
|
||||
}
|
||||
}
|
||||
|
||||
@@ -486,6 +556,22 @@
|
||||
return _levelLabel;
|
||||
}
|
||||
|
||||
- (NetImageView *)experImageView {
|
||||
if (!_experImageView) {
|
||||
_experImageView = [[NetImageView alloc] init];
|
||||
_experImageView.contentMode = UIViewContentModeScaleAspectFit;
|
||||
}
|
||||
return _experImageView;
|
||||
}
|
||||
|
||||
- (NetImageView *)charmImageView {
|
||||
if (!_charmImageView) {
|
||||
_charmImageView = [[NetImageView alloc] init];
|
||||
_charmImageView.contentMode = UIViewContentModeScaleAspectFit;
|
||||
}
|
||||
return _charmImageView;
|
||||
}
|
||||
|
||||
- (UIStackView *)attentionStackView {
|
||||
if (!_attentionStackView) {
|
||||
_attentionStackView = [[UIStackView alloc] init];
|
||||
|
||||
@@ -125,9 +125,6 @@ UIKIT_EXTERN NSString *kRequestTicket;
|
||||
if([AccountInfoStorage instance].isRequestTicket == NO) {
|
||||
[self getDataInfo];
|
||||
}
|
||||
if (!self.userInfo) {
|
||||
[self showLoading];
|
||||
}
|
||||
}
|
||||
|
||||
- (void)viewDidAppear:(BOOL)animated {
|
||||
@@ -135,6 +132,9 @@ UIKIT_EXTERN NSString *kRequestTicket;
|
||||
}
|
||||
|
||||
-(void)getDataInfo{
|
||||
if (self.functionArray.count < 2) {
|
||||
[self.presenter getPersonItemList];
|
||||
}
|
||||
[self.presenter getUserInfo];
|
||||
}
|
||||
|
||||
@@ -629,12 +629,11 @@ UIKIT_EXTERN NSString *kRequestTicket;
|
||||
|
||||
- (void)onGetUserInfoSuccess:(UserInfoModel *)userInfo {
|
||||
///防止重新注册时,获取到用户信息不全,调用接口时401
|
||||
[self hideHUD];
|
||||
if (!userInfo.isBindPhone && [ClientConfig shareConfig].iOSPhoneBind) {
|
||||
[self hideHUD];
|
||||
return;
|
||||
}
|
||||
if (userInfo.nick == nil || userInfo.avatar == nil ) {
|
||||
[self hideHUD];
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -642,27 +641,17 @@ UIKIT_EXTERN NSString *kRequestTicket;
|
||||
|
||||
self.userInfo = userInfo;
|
||||
@kWeakify(self);
|
||||
userInfo.idAtt = [self.headView createNamePlateIdLabelAttribute:userInfo];
|
||||
|
||||
[self.tableView reloadData];
|
||||
[self.headView createNamePlateIdLabelAttribute:userInfo];
|
||||
self.headView.userInfo = userInfo;
|
||||
|
||||
dispatch_async(dispatch_get_global_queue(0, 0), ^{
|
||||
@kStrongify(self);
|
||||
[self.presenter getClanDetailInfo];
|
||||
[self.presenter getUserWalletInfo];
|
||||
[self.presenter getPersonItemList];
|
||||
// [self.presenter getMineBannerList];
|
||||
[self.presenter getNobleInfo];
|
||||
});
|
||||
|
||||
dispatch_after(dispatch_time(DISPATCH_TIME_NOW, (int64_t)(0.25 * NSEC_PER_SEC)), dispatch_get_main_queue(), ^{
|
||||
[self.headView createNamePlateLevelAttribute:userInfo complete:^(NSMutableAttributedString *textAtt) {
|
||||
@kStrongify(self);
|
||||
dispatch_async(dispatch_get_main_queue(), ^{
|
||||
userInfo.levelAtt = textAtt;
|
||||
self.headView.userInfo = userInfo;
|
||||
});
|
||||
}];
|
||||
});
|
||||
}
|
||||
|
||||
- (void)getUserWalletInfo:(WalletInfoModel *)balanceInfo{
|
||||
|
||||
@@ -1100,7 +1100,6 @@
|
||||
giftInfo = [[XPGiftStorage shareStorage] findGiftInfo:info.giftId];
|
||||
}
|
||||
|
||||
|
||||
///官方新用户
|
||||
[attribute appendAttributedString:[self createOfficalAndNewuserAttribute:sendInfo.defUser newUser:sendInfo.newUser fromSayHelloChannel:sendInfo.fromSayHelloChannel]];
|
||||
//nick
|
||||
|
||||
@@ -237,7 +237,7 @@
|
||||
NSMutableDictionary *dict = [[NSMutableDictionary alloc] init];
|
||||
dict[@"ret_code"] = @(0);
|
||||
dict[@"ret_msg"] = @"return form APP onGetGameCfg";
|
||||
|
||||
|
||||
dict[@"ui"] = @{
|
||||
@"join_btn" : @{@"custom": @(YES), @"hide": @(YES)},//加入游戏
|
||||
@"start_btn" : @{@"custom": @(YES), @"hide": @(YES)},//开始游戏
|
||||
@@ -274,8 +274,6 @@
|
||||
if(self.delegate && [self.delegate respondsToSelector:@selector(getGameRsultsWithList:)]){
|
||||
[self.delegate getGameRsultsWithList:list];
|
||||
}
|
||||
|
||||
|
||||
}else if ([state isEqualToString:MG_COMMON_PUBLIC_MESSAGE]) {
|
||||
NSLog(@"ISudFSMMG:onGameStateChange:游戏->APP:公屏消息");
|
||||
} else if ([state isEqualToString:MG_COMMON_KEY_WORD_TO_HIT]) {
|
||||
|
||||
Reference in New Issue
Block a user