From b4e1288a9b63eb820e9c9489c56aac4bf6b31067 Mon Sep 17 00:00:00 2001 From: Davin <591807572@qq.com> Date: 星期三, 18 十二月 2024 14:34:16 +0800 Subject: [PATCH] feature 图片资源更新 --- EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZDeviceMsgListView.m | 67 ++++++++++++++++++++++++++++++--- 1 files changed, 61 insertions(+), 6 deletions(-) diff --git a/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZDeviceMsgListView.m b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZDeviceMsgListView.m index a8e76b8..3da0a43 100644 --- a/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZDeviceMsgListView.m +++ b/EZSDK/EZSDK/EZ/TempPassword/Views/HDLEZDeviceMsgListView.m @@ -7,6 +7,14 @@ #import "HDLEZDeviceMsgListView.h" #import "HDLEZDeviceMsgCell.h" +#import "HDLEZVideoDoorMsgCell.h" + +@interface HDLEZDeviceMsgListView () + +@property (copy, nonatomic) void(^previewPic)(NSString *pictureUrl); + +@end + @implementation HDLEZDeviceMsgListView{ CGFloat cellHeight; } @@ -21,7 +29,10 @@ self.showsVerticalScrollIndicator=NO; self.delegate = self; self.dataSource = self; - cellHeight=65; + cellHeight=80; + self.rowHeight = UITableViewAutomaticDimension; + self.estimatedRowHeight = 80; + [self registerClass:[HDLEZVideoDoorMsgCell class] forCellReuseIdentifier:@"HDLEZVideoDoorMsgCell"]; [self setSeparatorInset:UIEdgeInsetsZero]; // [self setLayoutMargins:UIEdgeInsetsZero]; } @@ -38,23 +49,67 @@ } -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{ - return cellHeight; + return UITableViewAutomaticDimension; } -(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{ HDLEZLog(@"鍒濆鍖朿ell"); - HDLEZDeviceMsgCell *cell = [tableView dequeueReusableCellWithIdentifier:@"HDLEZDeviceMsgCell"]; + HDLEZVideoDoorMsgCell *cell = [tableView dequeueReusableCellWithIdentifier:@"HDLEZVideoDoorMsgCell" forIndexPath:indexPath]; if(cell == nil){ - cell=[[HDLEZDeviceMsgCell alloc]initWithFrame:CGRectMake(0, 0, self.frame.size.width, cellHeight)]; + cell=[[HDLEZVideoDoorMsgCell alloc]initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"HDLEZVideoDoorMsgCell"]; } - HDLEZDeviceMsgInfoModel *model=self.msgList[indexPath.row]; - cell.msgInfo=model; + [self configCell:cell indexPath:indexPath]; +// HDLEZDeviceMsgCell *cell = [tableView dequeueReusableCellWithIdentifier:@"HDLEZDeviceMsgCell"]; +// if(cell == nil){ +// cell=[[HDLEZDeviceMsgCell alloc]initWithFrame:CGRectMake(0, 0, self.frame.size.width, cellHeight)]; +// } +// HDLEZDeviceMsgInfoModel *model=self.msgList[indexPath.row]; +// cell.msgInfo=model; // HDLEZLog(@"鍒濆鍖朿ell ID:%@",model.extVisitorId); return cell; } +- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { + if (self.msgList.count <= indexPath.row) return; + HDLEZDeviceMsgInfoModel *messageModel = self.msgList[indexPath.row]; + if (self.previewPic && messageModel.extInfo.picUrl && messageModel.extInfo.picUrl.length > 0) { + self.previewPic(messageModel.extInfo.picUrl); + } +} + +#pragma mark - PublishMethod +- (void)previewPicture:(void(^)(NSString *pictureUrl))previewPic { + self.previewPic = previewPic; +} + +#pragma mark - PrivateMethod +- (void)configCell:(HDLEZVideoDoorMsgCell *)cell indexPath:(NSIndexPath *)indexPath { + if (self.msgList.count <= indexPath.row) return; + + HDLEZDeviceMsgInfoModel *messageModel = self.msgList[indexPath.row]; + + NSString *status = @""; + if ([messageModel.extInfo.answerStatus isEqualToString:@"answer"]) { + status = HDLEZLocallizedString(@"device_callout_answer"); + } else if (([messageModel.extInfo.answerStatus isEqualToString:@"no_answer"])) { + status = HDLEZLocallizedString(@"device_callout_no_answer"); + } + if (messageModel.createTime && messageModel.createTime.length == 13) { // 姣杞 + messageModel.createTime = [messageModel.createTime substringToIndex:10]; + } + NSString *messageTime = [self turnDate:messageModel.createTime]; + [cell configMessageInfoWithTitle:messageModel.content deviceStatus:status messageTime:messageTime messageImage:messageModel.extInfo.picUrl]; + [cell showSpearator:(self.msgList.count != indexPath.row + 1)]; +} + +/*鏃堕棿鎴宠浆鏃堕棿 + */ +-(NSString *)turnDate:(NSString*)dateStr{ + return [HDLEZConstants timeStrWithFormate:@"yyyy.MM.dd HH:mm" data:[NSDate dateWithTimeIntervalSince1970:[dateStr integerValue]]];; +} + /*璁剧疆娑堟伅鍒楄〃鍊� */ -(void)setMsgList:(NSArray<HDLEZDeviceMsgInfoModel *> *)msgList{ -- Gitblit v1.8.0