|
//
// MessageTableViewCell.m
// ThePaperBase
//
// Created by zhousan on 15/8/14.
// Copyright (c) 2015年 scar1900. All rights reserved.
//
#import "MessageTableViewCell.h"
@interface MessageTableViewCell ()
@property (nonatomic, strong) UIView *backView;
@property (nonatomic, strong) UILabel *messageLabel;
@property (nonatomic, strong) UISwitch *swit;
@property (nonatomic, strong) UIView *lineView;
@end
@implementation MessageTableViewCell
- (id)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier {
self = [super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
[self addSubview:self.backView];
UIView *selectView = [[UIView alloc]initWithFrame:CGRectMake(10, 0, CGRectGetWidth(self.bounds)-20, CGRectGetHeight(self.bounds))];
selectView.backgroundColor = [UIColor colorWithHexString:CELLBACKCOLOR];
self.selectionStyle = UITableViewCellSelectionStyleNone;
self.selectedBackgroundView = selectView;
[self.backView addSubview:self.swit];
[self.backView addSubview:self.messageLabel];
[self.backView addSubview:self.lineView];
[self subLayoutSubViews];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(needrefreshNightMode:) name:REFRESHAFTERNIGHTMODE object:nil];
}
return self;
}
- (void)needrefreshNightMode:(id)sender{
UIView *selectView = [[UIView alloc]initWithFrame:CGRectMake(10, 0, CGRectGetWidth(self.bounds)-20, CGRectGetHeight(self.bounds))];
selectView.backgroundColor = [UIColor colorWithHexString:CELLBACKCOLOR];
self.selectedBackgroundView = selectView;
self.backView.backgroundColor = [UIColor colorWithHexString:BackGroundColor];
self.lineView.backgroundColor = [UIColor colorWithHexString:LINECOLOR];
self.messageLabel.textColor = [UIColor colorWithHexString:TextGray];
}
#pragma mark - getter
- (UIView*)backView {
if (!_backView) {
_backView = [[UIView alloc]initWithFrame:CGRectZero];
_backView.backgroundColor = [UIColor colorWithHexString:BackGroundColor];
}
return _backView;
}
- (UIView *)lineView {
if (!_lineView) {
_lineView = [[UIView alloc] initWithFrame:CGRectZero];
_lineView.backgroundColor = [UIColor colorWithHexString:LINECOLOR];
}
return _lineView;
}
- (UISwitch *)swit {
if (!_swit) {
_swit = [[UISwitch alloc] initWithFrame:CGRectZero];
[_swit addTarget:self action:@selector(switchValue:) forControlEvents:UIControlEventValueChanged];
[_swit setOnTintColor:[UIColor colorWithHexString:BLUECOLOR]];
}
return _swit;
}
- (UILabel *)messageLabel {
if (!_messageLabel) {
_messageLabel = [[UILabel alloc] initWithFrame:CGRectZero];
_messageLabel.font = appFont(TEXT_THREE_LEVELSIZE, NO);
_messageLabel.textColor = [UIColor colorWithHexString:TextGray];
_messageLabel.backgroundColor = [UIColor clearColor];
_messageLabel.text = @"推送设置";
}
return _messageLabel;
}
- (void)switchValue:(UISwitch *)swit {
if ([self.delegate respondsToSelector:@selector(switchValueWith:)]) {
[self.delegate switchValueWith:swit.on];
}
}
- (void)setSwitchValue:(BOOL)on {
self.swit.on = on;
}
#pragma mark - layout
- (void)subLayoutSubViews {
[self.backView makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self).offset(10);
make.right.equalTo(self).offset(-10);
make.top.equalTo(self);
make.bottom.equalTo(self);
}];
[self.messageLabel makeConstraints:^(MASConstraintMaker *make) {
make.centerY.equalTo(self.backView);
make.left.equalTo(self.backView).offset(10);
make.size.mas_equalTo(CGSizeMake(150, 20));
}];
[self.swit makeConstraints:^(MASConstraintMaker *make) {
make.right.equalTo(self.backView).offset(-10);
make.centerY.equalTo(self.backView);
make.size.mas_equalTo(CGSizeMake(50, 30));
}];
[self.lineView makeConstraints:^(MASConstraintMaker *make) {
make.left.equalTo(self.backView);
make.right.equalTo(self.backView);
make.bottom.equalTo(self.backView);
make.height.mas_equalTo(1);
}];
}
- (void)awakeFromNib {
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
- (void)dealloc {
[[NSNotificationCenter defaultCenter]removeObserver:self];
}
@end
|