|
//
// DetailAnswerIcon.m
// ThePaperBase
//
// Created by zhousan on 15/11/20.
// Copyright © 2015年 scar1900. All rights reserved.
//
#import "DetailAnswerIcon.h"
#import "SDWebImageManager.h"
@implementation DetailAnswerIcon
@synthesize commentBO;
- (void)setCommentBO:(commentObjectVO *)data {
commentBO = data;
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
userBO *user = setJsonDicToDataModel(data.userInfo, [userBO class]);
NSString *nameStr = user.sname?[NSString stringWithFormat:@"%@:",user.sname]:@"";
NSString *praiseNum = data.praiseTimes;
dispatch_async(dispatch_get_main_queue(), ^{
if (isBlankString(user.pic)) {
self.answerIcon.image = Image(@"login/loginIcon_s.png");
}else {
if ([[TPUserDefault instance].readModeStr intValue] == imageMode) {
[self updateUserHeadImage:user];
}else if ([[TPUserDefault instance].readModeStr intValue] == textMode) {
self.answerIcon.image = Image(@"login/loginIcon_s.png");
}else {
if ([Remote IsEnableWIFI]) {
[self updateUserHeadImage:user];
}else {
self.answerIcon.image = Image(@"login/loginIcon_s.png");
}
}
}
if ([user.isAuth integerValue] ==1) {//认证用户提问或回答,头像不显示加”V“(bug:4116)
self.verifyTag.hidden = NO;
}else{
self.verifyTag.hidden = YES;
}
self.anserNameLabel.text = nameStr;
self.timeLabel.text = data.pubTime;
if (!isBlankString(praiseNum)) {
self.OkButton.text = praiseNum;
}
if (data.isPraised && [data.isPraised intValue] == 1) {
[self.OkButton setSelected:YES];
}else {
[self.OkButton setSelected:NO];
}
[self reLayoutSubViews];
});
});
self.OkButton.text = data.praiseTimes;
[self reLayoutSubViews];
}
- (void)updateUserHeadImage:(userBO*)user{
dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
SDWebImageManager *imageManager = [SDWebImageManager sharedManager];
[imageManager downloadImageWithURL:[NSURL URLWithString:user.pic]
options:SDWebImageLowPriority
progress:^(NSInteger receivedSize, NSInteger expectedSize) {
} completed:^(UIImage *img, NSError *error, SDImageCacheType cacheType, BOOL finished, NSURL *imageURL) {
// UIImage *roundImage = [UIImage circleImage:img withParam:28];
dispatch_async(dispatch_get_main_queue(), ^{
self.answerIcon.image = img;
});
}];
});
}
- (void)subLayoutSubViews {
__weak typeof(self) weakSelf = self;
[self.backView makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self);
}];
[self.answerIcon makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.backView).offset(10);
make.top.equalTo(self.backView).offset(12);
make.size.mas_equalTo(CGSizeMake(28, 28));
}];
[self.iconButton makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.answerIcon);
}];
[self.verifyTag makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(weakSelf.backView.left).offset(28);
make.top.equalTo(weakSelf.backView.top).offset(28);
make.height.mas_equalTo(12);
make.width.mas_equalTo(12);
}];
[self.iconBack makeConstraints:^(MASConstraintMaker *make) {
make.edges.equalTo(self.answerIcon);
}];
[self.timeImg makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(weakSelf.answerIcon.right).offset(10);
make.top.equalTo(weakSelf.anserNameLabel.bottom).offset(7);
make.height.mas_equalTo(10);
make.width.mas_equalTo(10);
}];
[self.nameButton makeConstraints:^(MASConstraintMaker *make) {
make.right.equalTo(self.anserNameLabel);
make.bottom.equalTo(self.anserNameLabel);
make.height.mas_equalTo(25);
make.width.equalTo(self.anserNameLabel);
}];
[self.timeLabel makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(weakSelf.timeImg.right).offset(5);
make.top.equalTo(weakSelf.anserNameLabel.bottom).offset(8);
make.height.mas_equalTo(9);
make.width.mas_equalTo(rect_screen.size.width/2);
}];
[self.OkButton makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(weakSelf.backView.right).offset(-40);
make.top.equalTo(weakSelf.anserNameLabel.top).offset(-2);
make.width.mas_equalTo(30);
make.height.mas_equalTo(35);
}];
[self.hostLabel makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(weakSelf.anserNameLabel.right).offset(5);
make.top.equalTo(weakSelf.anserNameLabel.top);
make.width.mas_equalTo(27);
make.height.mas_equalTo(12);
}];
}
- (void)reLayoutSubViews {
CGFloat nameWidth = returnTextWidthWithRTLabel(self.anserNameLabel.text, 12, appFont(TEXT_SIX_LEVELSIZE, NO), 0);
[self.anserNameLabel remakeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(self.backView.top).offset(14);
make.left.equalTo(self.iconBack.right).offset(10);
make.width.mas_equalTo(nameWidth+40);
make.height.mas_equalTo(14);
}];
}
@end
|