1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- //
- // chatListModel.m
- // shiku_im
- //
- // Created by os on 2020/6/29.
- // Copyright © 2020 Reese. All rights reserved.
- //
- #import "chatListModel.h"
- @interface chatListModel()
- @property (nonatomic,strong) NSMutableDictionary *cellHDic;
- @end
- @implementation chatListModel
- MJCodingImplementation
- -(void)setValue:(id)value forUndefinedKey:(NSString *)key{}
- -(CGFloat)cellHeight{
-
- if (!_cellHeight) {
-
- CGFloat textY=5;
- NSAttributedString *aStr = [[NSAttributedString alloc] initWithData:[self.content dataUsingEncoding:NSUnicodeStringEncoding] options:@{ NSDocumentTypeDocumentAttribute: NSHTMLTextDocumentType } documentAttributes:nil error:nil];
- CGSize size = [aStr boundingRectWithSize:CGSizeMake(JX_SCREEN_WIDTH-40, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading context:nil].size;
-
- // 并不是高度计算不对,我估计是计算出来的数据是 小数,在应用到布局的时候稍微差一点点就不能保证按照计算时那样排列,所以为了确保布局按照我们计算的数据来,就在原来计算的基础上 取ceil值,再加1;
- CGFloat height = ceil(size.height) + 1;
- // cell的高度
- CGSize maxSize=CGSizeMake([UIScreen mainScreen].bounds.size.width-76, MAXFLOAT);
- CGFloat textH=[self.title boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:14 weight:UIFontWeightRegular]} context:nil].size.height;
-
-
- _cellHeight=textY+height+textH+10;
- }
-
-
-
-
- return _cellHeight+1;
-
-
- }
-
- @end
|