ifish/Ifish/UMCommunity/UMCommunitySDK/UMCommunityUI/Common/InformSystem/UMComSysPrivateLetterCell.m

93 lines
5.4 KiB
Objective-C

//
// UMComSysPrivateLetterCell.m
// UMCommunity
//
// Created by umeng on 16/3/4.
// Copyright © 2016年 Umeng. All rights reserved.
//
#import "UMComSysPrivateLetterCell.h"
#import "UMComImageView.h"
#import <UMCommunitySDK/UMComSession.h>
#import <UMComDataStorage/UMComPrivateLetter.h>
#import <UMComDataStorage/UMComPrivateMessage.h>
#import <UMComDataStorage/UMComImageUrl.h>
#import "UMComResouceDefines.h"
#import <UMComFoundation/UMComKit+Color.h>
@implementation UMComSysPrivateLetterCell
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier cellSize:(CGSize)size
{
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
CGFloat iconLeftEdge = UMCom_Forum_LetterList_Icon_LeftEdge;
CGFloat icoTopEdge = UMCom_Forum_LetterList_Icon_TopEdge;
CGFloat iconWidth = size.height - icoTopEdge*2;
self.iconImageView = [[[UMComImageView imageViewClassName] alloc]initWithFrame:CGRectMake(iconLeftEdge, icoTopEdge, iconWidth, iconWidth)];
self.iconImageView.clipsToBounds = YES;
self.iconImageView.layer.cornerRadius = iconWidth/2;
[self.contentView addSubview:self.iconImageView];
CGFloat v_ImageWidth = 15;
UIImageView *v_imageView = [[UIImageView alloc]initWithFrame:CGRectMake(iconLeftEdge+iconWidth - v_ImageWidth, iconLeftEdge+iconWidth - v_ImageWidth, v_ImageWidth, v_ImageWidth)];
v_imageView.image = UMComImageWithImageName(@"um_forum_v_blue");
[self.iconImageView addSubview:v_imageView];
CGFloat subViewsRightEdge = UMCom_Forum_letterList_CellItems_RightEdge;
CGFloat dataLabelWidth = UMCom_Forum_LetterList_DateLabel_Width;
CGFloat redDotWidth = UMCom_Forum_LetterList_RedDot_Diameter;
CGFloat nameLabelLeftEdge = iconLeftEdge+iconWidth+UMCom_Forum_LetterList_IconName_Space;
self.nameLabel = [[UILabel alloc]initWithFrame:CGRectMake(nameLabelLeftEdge, UMCom_Forum_LetterList_Icon_TopEdge, size.width-nameLabelLeftEdge-subViewsRightEdge-dataLabelWidth, (size.height - UMCom_Forum_LetterList_Icon_TopEdge)/2)];
self.nameLabel.font = UMComFontNotoSansLightWithSafeSize(UMCom_Forum_LetterList_Name_TextFont);
self.nameLabel.textColor = UMComColorWithHexString(UMCom_Forum_LetterList_Name_TextColor);
[self.contentView addSubview:self.nameLabel];
self.dateLabel = [[UILabel alloc]initWithFrame:CGRectMake(self.nameLabel.frame.size.width+self.nameLabel.frame.origin.x, self.nameLabel.frame.origin.y, dataLabelWidth, self.nameLabel.frame.size.height)];
self.dateLabel.font = UMComFontNotoSansLightWithSafeSize(UMCom_Forum_LetterList_Date_TextFont);
self.dateLabel.numberOfLines = 0;
self.dateLabel.textAlignment = NSTextAlignmentRight;
self.dateLabel.textColor = UMComColorWithHexString(UMCom_Forum_LetterList_Date_TextColor);
[self.contentView addSubview:self.dateLabel];
self.detailLabel = [[UILabel alloc]initWithFrame:CGRectMake(self.nameLabel.frame.origin.x, self.nameLabel.frame.size.height+self.nameLabel.frame.origin.y, size.width-iconWidth-iconLeftEdge*2-redDotWidth-subViewsRightEdge, (size.height - UMCom_Forum_LetterList_Icon_TopEdge*2) - self.nameLabel.frame.size.height)];
self.detailLabel.font = UMComFontNotoSansLightWithSafeSize(UMCom_Forum_LetterList_Message_TextFont);
self.detailLabel.textColor = UMComColorWithHexString(UMCom_Forum_LetterList_Message_TextColor);
[self.contentView addSubview:self.detailLabel];
self.redDotLabel = [[UILabel alloc]initWithFrame:CGRectMake(size.width - redDotWidth - subViewsRightEdge,0, redDotWidth, redDotWidth)];
self.redDotLabel.center = CGPointMake(self.redDotLabel.center.x, self.detailLabel.center.y);
self.redDotLabel.backgroundColor = [UIColor redColor];
self.redDotLabel.layer.cornerRadius = redDotWidth/2;
self.redDotLabel.clipsToBounds = YES;
self.redDotLabel.font = UMComFontNotoSansLightWithSafeSize(UMCom_Forum_LetterList_RedDot_TextFont);
self.redDotLabel.textColor = UMComColorWithHexString(UMCom_Forum_letterList_RedDot_TextColor);
self.redDotLabel.textAlignment = NSTextAlignmentCenter;
[self.contentView addSubview:self.redDotLabel];
}
return self;
}
- (void)reloadCellWithPrivateLetter:(UMComPrivateLetter *)privateLetter
{
[self.iconImageView setImageURL:privateLetter.user.icon_url.small_url_string placeHolderImage:UMComImageWithImageName(@"um_forum_user_smile_gray")];
self.nameLabel.text = privateLetter.user.name?privateLetter.user.name:UMComLocalizedString(@"um_com_guest", @"无名客");
//self.dateLabel.text = privateLetter.update_time? privateLetter.update_time:[[NSDate date] description];
NSString* dataString = privateLetter.update_time? privateLetter.update_time:[[NSDate date] description];
self.dateLabel.text = createTimeString(dataString);
self.detailLabel.text = privateLetter.last_message.content?privateLetter.last_message.content:UMComLocalizedString(@"um_com_lastMessage", @"这本该是最后一条信息的");
int unreadCount = [privateLetter.unread_count intValue];
if (unreadCount > 0) {
self.redDotLabel.hidden = NO;
NSString *unreadText = [NSString stringWithFormat:@"%d",unreadCount];
self.redDotLabel.text = privateLetter.unread_count?unreadText:@"12";
}else{
self.redDotLabel.hidden = YES;
}
}
@end