mirror of
https://github.com/TencentCloud/TIMSDK.git
synced 2026-10-22 17:38:46 +08:00
44 lines
1.5 KiB
Objective-C
44 lines
1.5 KiB
Objective-C
//
|
|
// MyCustomCellData.m
|
|
// TUIKitDemo
|
|
//
|
|
// Created by annidyfeng on 2019/6/10.
|
|
// Copyright © 2019年 Tencent. All rights reserved.
|
|
//
|
|
/** 腾讯云IM Demo自定义气泡数据
|
|
* 用于存储聊天气泡中的文本信息数据
|
|
*
|
|
*/
|
|
#import "TUILinkCellData.h"
|
|
|
|
@implementation TUILinkCellData
|
|
|
|
+ (TUIMessageCellData *)getCellData:(V2TIMMessage *)message{
|
|
NSDictionary *param = [NSJSONSerialization JSONObjectWithData:message.customElem.data options:NSJSONReadingAllowFragments error:nil];
|
|
TUILinkCellData *cellData = [[TUILinkCellData alloc] initWithDirection:message.isSelf ? MsgDirectionOutgoing : MsgDirectionIncoming];
|
|
cellData.msgID = message.msgID;
|
|
cellData.text = param[@"text"];
|
|
cellData.link = param[@"link"];
|
|
cellData.avatarUrl = [NSURL URLWithString:message.faceURL];
|
|
return cellData;
|
|
}
|
|
|
|
+ (NSString *)getDisplayString:(V2TIMMessage *)message {
|
|
NSDictionary *param = [NSJSONSerialization JSONObjectWithData:message.customElem.data options:NSJSONReadingAllowFragments error:nil];
|
|
return param[@"text"];
|
|
}
|
|
|
|
- (CGSize)contentSize
|
|
{
|
|
CGRect rect = [self.text boundingRectWithSize:CGSizeMake(300, MAXFLOAT) options:NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingUsesFontLeading attributes:@{ NSFontAttributeName : [UIFont systemFontOfSize:15] } context:nil];
|
|
CGSize size = CGSizeMake(ceilf(rect.size.width)+1, ceilf(rect.size.height));
|
|
|
|
// 加上气泡边距
|
|
size.height += 60;
|
|
size.width += 20;
|
|
|
|
return size;
|
|
}
|
|
|
|
@end
|