|
//
// readHistoryController.m
// ThePaperBase
//
// Created by Huixin on 15/9/29.
// Copyright © 2015年 scar1900. All rights reserved.
//
#import "readHistoryController.h"
#import "readHistoryTableController.h"
#import "readHistoryViewModel.h"
@interface readHistoryController () <readHistoryViewModelDelegate, readHistoryTableDelegate>
@property(nonatomic, strong)UILabel *noDataLabel;
@property(nonatomic, strong)readHistoryTableController *tableVC;
@property(nonatomic, strong)readHistoryViewModel *viewModel;
@end
@implementation readHistoryController
- (void)viewDidLoad {
[super viewDidLoad];
// Do any additional setup after loading the view.
self.titleStr = @"阅读历史";
self.view.backgroundColor = [UIColor colorWithHexString:BackGroundColor];
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(needrefreshNightMode) name:REFRESHAFTERNIGHTMODE object:nil];
[self.view addSubview:self.noDataLabel];
[self.view addSubview:self.tableVC.view];
[self addChildViewController:self.tableVC];
[self.tableVC didMoveToParentViewController:self];
[self layoutViews];
_viewModel = [readHistoryViewModel new];
_viewModel.delegate = self;
if (!self.tableVC.dataList || self.tableVC.dataList.count == 0) {
[_viewModel getReadHistoryWithURL:nil];
}
}
- (void)dealloc {
[[NSNotificationCenter defaultCenter] removeObserver:self];
}
- (void)needrefreshNightMode { //bug5058: 夜间模式实时切换
self.view.backgroundColor = [UIColor colorWithHexString:BackGroundColor];
_noDataLabel.textColor = [UIColor colorWithHexString:TextLightGray];
}
- (void)layoutViews {
[self.noDataLabel makeConstraints:^(MASConstraintMaker *make) {
make.centerX.equalTo(self.view.centerX);
make.centerY.equalTo(self.view.centerY);
make.width.mas_equalTo(rect_screen.size.width);
make.height.mas_equalTo(@45);
}];
[self.tableVC.view makeConstraints:^(MASConstraintMaker *make) {
make.top.equalTo(self.naviBar.bottom);
make.left.equalTo(self.view.left);
make.right.equalTo(self.view.right);
make.bottom.equalTo(self.view.bottom);
}];
}
- (UILabel*)noDataLabel{
if (!_noDataLabel) {
_noDataLabel = [[UILabel alloc] init];
_noDataLabel.textColor = [UIColor colorWithHexString:TextLightGray];
_noDataLabel.font = appFont(TEXT_THREE_LEVELSIZE, NO);
_noDataLabel.textAlignment = NSTextAlignmentCenter;
_noDataLabel.lineBreakMode = NSLineBreakByWordWrapping;
_noDataLabel.numberOfLines = 0;
_noDataLabel.backgroundColor = [UIColor clearColor];
_noDataLabel.text = @"没有阅读历史";
_noDataLabel.hidden = YES;
}
return _noDataLabel;
}
- (readHistoryTableController*)tableVC {
if (!_tableVC) {
_tableVC = [readHistoryTableController new];
_tableVC.delegate = self;
_tableVC.view.hidden = YES;
}
return _tableVC;
}
- (void)checkDataList {
if (self.tableVC.dataList.count > 0) {
self.tableVC.view.hidden =NO;
self.noDataLabel.hidden = YES;
}
else {
self.tableVC.view.hidden =YES;
self.noDataLabel.hidden =NO;
}
}
#pragma mark - viewmodel delegate
- (void)returnReadHistoryList:(NSMutableArray*)data nextUrl:(NSString*)url {
self.tableVC.dataList = data;
[self.tableVC.tableView setContentOffset:CGPointZero];
self.tableVC.nextUrl = url;
[self checkDataList];
}
- (void)returnErrorMessage:(NSString*)msg {
ShowTextMessage(msg);
}
#pragma mark - naviBar
- (void)tapNaviBar:(id)sender {
if (![self.tableVC.view isHidden]) {
[self.tableVC.tableView setContentOffset:CGPointZero animated:YES];
return;
}
}
#pragma mark - readHistoryTableDelagate
- (void)readHistoryGoToContent:(listContObjectVO *)data {
pushContentWithListContentObject(self.navigationController, data);
}
- (void)didReceiveMemoryWarning {
[super didReceiveMemoryWarning];
// Dispose of any resources that can be recreated.
}
/*
#pragma mark - Navigation
// In a storyboard-based application, you will often want to do a little preparation before navigation
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
// Get the new view controller using [segue destinationViewController].
// Pass the selected object to the new view controller.
}
*/
@end
|