|
//
// strongRelateCountsView.m
// ThePaperDemo
//
// Created by scar1900 on 14-9-22.
// Copyright (c) 2014年 scar1900. All rights reserved.
//
#import "strongRelateCountsCell.h"
#import "AsyncImageView.h"
#import "RegexKitLite.h"
#import "Reachability.h"
@interface strongRelateCountsCell() {
CGFloat contentPadding;
CGFloat TEMP_K;
}
@property(nonatomic, strong)AsyncImageView *relateImageView;
@property(nonatomic, strong)UILabel *destLabel;
@end
@implementation strongRelateCountsCell
@synthesize listdataBO = _listdataBO;
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
if (IS_IPHONE_6P) {
contentPadding = 15;
}else if (IS_IPHONE_6) {
contentPadding = 15;
}else {
contentPadding = 10;
}
TEMP_K = (rect_screen.size.width-2*contentPadding)/300;
self.backgroundColor = [UIColor clearColor];
self.selectionStyle = UITableViewCellSelectionStyleNone;
[self addSubview:self.relateImageView];
[self addSubview:self.destLabel];
[self addSubview:self.noImageButton];
[self.noImageButton makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(self);
make.top.equalTo(self);
make.size.equalTo(CGSizeMake(150, 120));
}];
UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0, 0, 80, 50)];
imageView.image = Image(@"detailPage/noImagePic.png") ;
[self.noImageButton addSubview:imageView];
imageView.center = CGPointMake(75, 60);
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(needrefreshNightMode:) name:REFRESHAFTERNIGHTMODE object:nil];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(reachabilityChanged:)
name:kReachabilityChangedNotification
object:nil];
}
return self;
}
- (void)reachabilityChanged:(NSNotification *)note
{
if ([self.listdataBO.isTap isEqualToString:@"1"] && [Remote IsEableNetwork]) {
self.relateImageView.imageUrl = self.listdataBO.pic;
self.relateImageView.imageId = @"";
self.relateImageView.imageId = getImageNameFromURL(self.listdataBO.pic);
}
}
- (void)needrefreshNightMode:(id)sender{
_destLabel.textColor = [UIColor colorWithHexString:strongDescColor];
}
- (UIButton *)noImageButton {
if (nil == _noImageButton) {
_noImageButton = [UIButton buttonWithType:UIButtonTypeCustom];
_noImageButton.backgroundColor = [[TPUserDefault instance].isNightMode integerValue] > 0 ? [UIColor colorWithHexString:@"0x3d3d3e"] : [UIColor colorWithHexString:@"0xedf1f4"];
[_noImageButton addTarget:self action:@selector(setImageButtonClick:) forControlEvents:UIControlEventTouchUpInside];
_noImageButton.hidden = YES;
}
return _noImageButton;
}
- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
- (AsyncImageView*)relateImageView {
if (!_relateImageView) {
_relateImageView = [[AsyncImageView alloc]initWithFrame:CGRectZero];
_relateImageView.backgroundColor = [UIColor clearColor];
}
return _relateImageView;
}
- (UILabel*)destLabel {
if (!_destLabel) {
_destLabel = [[UILabel alloc]initWithFrame:CGRectZero];
_destLabel.backgroundColor = [UIColor clearColor];
_destLabel.textAlignment = NSTextAlignmentLeft;
_destLabel.textColor = [UIColor colorWithHexString:strongDescColor];
_destLabel.lineBreakMode = NSLineBreakByWordWrapping;
_destLabel.numberOfLines = 0;
/**
* bug:5181(【适配性】新闻详情页,4s 5c强关系下方的文字和会滚动条重叠)
*/
}
_destLabel.font = appFont(TEXT_FOUR_LEVELSIZE, NO);
return _destLabel;
}
- (void)setListdataBO:(listContObjectVO *)dataBO {
_listdataBO = dataBO;
NSString *url = dataBO.pic;
NSString *name = dataBO.name;
if (name && ![name isEqualToString:@""]) {
NSAttributedString *attriString = getLineSpaceAttributedString(name,
[iphoneLineSpaceAndParaSpace returnLevel3LineSpace_specialTopic],
appFont(TEXT_FOUR_LEVELSIZE, NO));
self.destLabel.attributedText = attriString;
}
// CGFloat height = returnTextHeightWithRTLabel(name, rect_screen.size.width-20, appFont(TEXT_FOUR_LEVELSIZE, NO), 5);
CGFloat height = [self.destLabel sizeThatFits:CGSizeMake(rect_screen.size.width-2*contentPadding, CGFLOAT_MAX)].height;
if (url && ![url isEqualToString:@""]) {
if ([url isMatchedByRegex:@"/[0-9]+\\.jpg"]) {
// if ([dataBO.watermark intValue] == 1) {//视频
// self.relateImageView.frame = CGRectMake(10, 0, rect_screen.size.width-20, 338/2*TEMP_K);
// }else {
// self.relateImageView.frame = CGRectMake(10, 0, rect_screen.size.width-20, 125*TEMP_K);
// }
self.relateImageView.frame = CGRectMake(contentPadding, 0, rect_screen.size.width-2*contentPadding, 125*TEMP_K);
self.relateImageView.imageUrl = url;
self.relateImageView.imageId = getImageNameFromURL(url);
// }
}
}
int readmode = [[TPUserDefault instance].readModeStr intValue];
if (readmode == intelligentMode) {
if ([Remote IsEnableWIFI]) {
readmode = imageMode;
}else {
readmode = textMode;
}
}
if (readmode == imageMode) {
self.relateImageView.imageUrl = url;
self.relateImageView.imageId = getImageNameFromURL(url);
self.relateImageView.hidden = NO;
self.noImageButton.hidden = YES;
self.destLabel.frame = CGRectMake(contentPadding,CGRectGetMaxY(self.relateImageView.bounds)+5, rect_screen.size.width-2*contentPadding, height);
}else{
if ([dataBO.isTap isEqualToString:@"1"]) {
self.relateImageView.imageUrl = url;
self.relateImageView.imageId = getImageNameFromURL(url);
self.relateImageView.hidden = NO;
self.noImageButton.hidden = YES;
self.destLabel.frame = CGRectMake(contentPadding,CGRectGetMaxY(self.relateImageView.bounds)+5, rect_screen.size.width-2*contentPadding, height);
}else {
self.relateImageView.hidden = YES;
self.noImageButton.hidden = NO;
self.destLabel.frame = CGRectMake(contentPadding,120+5, rect_screen.size.width-2*contentPadding, height);
}
}
}
- (void)setImageButtonClick:(id)sender {
if ([self.delegate respondsToSelector:@selector(clickLoadImageWithListCont:Cell:)]) {
[self.delegate clickLoadImageWithListCont:self.listdataBO Cell:self];
}
}
- (void)layoutSubviews {
[super layoutSubviews];
}
@end
|