给自定义cell赋值代码
//
// ViewController.m
// 11 - 投资管理 - 李洪强
//
// Created by vic fan on 16/4/8.
// Copyright © 2016年 李洪强. All rights reserved.
//
#define SCREENW [UIScreen mainScreen].bounds.size.width
#define SCREENH [UIScreen mainScreen].bounds.size.height
#import "ViewController.h"
//投资标详情
#import "LHQInvestmentTargetsCtrl.h"
#import "LHQInvestmentManagementCell.h"
#import "LHQInvestmentManagementModel.h"
//已完成
#import "LHQCompletedCtrl.h"
//未满标
#import "LHQNotFullMarkCtrl.h"
@interface ViewController ()<UITabBarControllerDelegate,UITableViewDataSource>
@property(nonatomic)NSMutableArray *dataArr;
@end
@implementation ViewController
-(NSMutableArray *)dataArr
{
if (!_dataArr) {
_dataArr = [[NSMutableArray alloc] init];
}
return _dataArr;
}
- (void)viewDidLoad {
[super viewDidLoad];
self.title = @"投资管理";
//如果tableView启用分组的话。第一组之前会有空白。把空白去掉
self.tableView.tableHeaderView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, 0, 17)];
[self.navigationController.navigationBar setBarTintColor:[UIColor colorWithRed:64/255.0 green:41/255.0 blue:96/255.0 alpha:1.0]];
[self.navigationController.navigationBar setTitleTextAttributes:@{NSForegroundColorAttributeName:[UIColor whiteColor]}];
[self.tableView registerNib:[UINib nibWithNibName:@"LHQInvestmentManagementCell" bundle:nil] forCellReuseIdentifier:@"LHQInvestmentManagementCell"];
self.tableView.delegate = self;
self.tableView.dataSource = self;
[self createData];
}
//数据
- (void)createData{
//循环给每一个cell里面的数据数组赋值
for (int i=0; i<4; i++) {
LHQInvestmentManagementModel *model = [[LHQInvestmentManagementModel alloc] init];
NSDictionary *dic = [NSDictionary dictionaryWithObjects:@[@"Snip20160415_11",@"世界那么大,我想去看看",@"还款中",@"12000.00",@"3000.00",@"986.12"] forKeys:@[@"stutes",@"title",@"bidStutes",@"assets",@"invest",@"lastone"]];
[model setValuesForKeysWithDictionary:dic];
[self.dataArr addObject:model];
}
//把模型model放到数据数组中
[self.tableView reloadData];
}
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath{
// NSLog(@"%zd,%zd",indexPath.section,indexPath.row);
//点击某一行cell跳转到投资标详情
UIStoryboard *CZStoryboard = [UIStoryboard storyboardWithName:@"Main" bundle:nil];
LHQInvestmentManagementModel *model = self.dataArr[indexPath.section];
//用模型数据给标的状态赋值
// CZVC.StateLabel = model.bidStutes;
if([model.bidStutes isEqualToString:@"还款中"]){
LHQInvestmentTargetsCtrl *CZVC = [CZStoryboard instantiateViewControllerWithIdentifier:@"LHQInvestmentTargetsCtrl"];
CZVC.StateLabel = model.bidStutes;
[self.navigationController pushViewController:CZVC animated:YES];
}else if ([model.bidStutes isEqualToString:@"已还款"]){
LHQCompletedCtrl *CVC = [CZStoryboard instantiateViewControllerWithIdentifier:@"LHQCompletedCtrl"];
CVC.StateLabel2 = model.bidStutes;
[self.navigationController pushViewController:CVC animated:YES];
}else {
LHQNotFullMarkCtrl *NVC = [CZStoryboard instantiateViewControllerWithIdentifier:@"LHQNotFullMarkCtrl"];
NVC.StateLabel3 = [ViewController loanStatusWithCode:14];;
[self.navigationController pushViewController:NVC animated:YES];
}
}
//组数
- (NSInteger)numberOfSectionsInTableView:(UITableView *)tableView{
return 4;
}
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{
return 1;
}
//每一行显示的内容
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {
static NSString *CellTableIdentifier = @"LHQInvestmentManagementCell";
LHQInvestmentManagementCell *cell = [tableView dequeueReusableCellWithIdentifier:
CellTableIdentifier forIndexPath:indexPath];
if (cell == nil)
{
cell = [[LHQInvestmentManagementCell alloc] init] ;
}
LHQInvestmentManagementModel *model = _dataArr[indexPath.section];
[cell customedWithModel:model];
return cell;
}
//每一行的高度
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
{
//屏幕适配
if(SCREENH <= 480){
return 100;
}else if (SCREENH < 667){
return 100;
}else if (SCREENH == 667){
return 125;
}else {
return 150;
}
}
//借款状态对照码
+ (NSString *)loanStatusWithCode:(NSInteger)statusCode
{
NSString *loanStatusStr = nil;
switch (statusCode) {
case 0:{
loanStatusStr = @"审核中";
}
break;
case 1:{
loanStatusStr = @"提前借款";
}
break;
case 2:{
loanStatusStr = @"筹款中";
}
break;
case 3:{
loanStatusStr = @"待放款";
}
break;
case 4:{
loanStatusStr = @"还款中";
}
break;
case 5:{
loanStatusStr = @"已还款";
}
break;
case 10:{
loanStatusStr = @"审核中待验证";
}
break;
case 11:{
loanStatusStr = @"提前借款待验证";
}
break;
case 14:{
loanStatusStr = @"本金垫付还款中";
}
break;
case -10:{
loanStatusStr = @"未验证";
}
break;
case -100:{
loanStatusStr = @"资金托管提交中";
}
break;
case -5:{
loanStatusStr = @"撤销";
}
break;
case -4:{
loanStatusStr = @"流标";
}
break;
case -3:{
loanStatusStr = @"放款不通过";
}
break;
case -2:{
loanStatusStr = @"审核不通过";
}
break;
case -1:{
loanStatusStr = @"审核不通过";
}
break;
default:{
loanStatusStr = [NSString stringWithFormat:@"%zd",statusCode];
}
break;
}
return loanStatusStr;
}
@end
//
// LHQInvestmentManagementCell.h
// 11 - 投资管理 - 李洪强
//
// Created by vic fan on 16/4/15.
// Copyright © 2016年 李洪强. All rights reserved.
//
#import <UIKit/UIKit.h>
@class LHQInvestmentManagementModel;
@interface LHQInvestmentManagementCell : UITableViewCell
-(void)customedWithModel:(LHQInvestmentManagementModel *)model;
@end
//
// LHQInvestmentManagementCell.m
// 11 - 投资管理 - 李洪强
//
// Created by vic fan on 16/4/15.
// Copyright © 2016年 李洪强. All rights reserved.
//
#define SCREENW [UIScreen mainScreen].bounds.size.width
#define SCREENH [UIScreen mainScreen].bounds.size.height
#import "LHQInvestmentManagementCell.h"
//模型数据
#import "LHQInvestmentManagementModel.h"
#import "ViewController.h"
@interface LHQInvestmentManagementCell ()
//1 标识图片
@property (weak, nonatomic) IBOutlet UIImageView *IdentificationImage;
//主标题
@property (weak, nonatomic) IBOutlet UILabel *MainTitleLabel;
//2 标的状态
@property (weak, nonatomic) IBOutlet UILabel *TargetStateLabel;
//3 总额数字
@property (weak, nonatomic) IBOutlet UILabel *TotalLabel;
@property (weak, nonatomic) IBOutlet UILabel *TotalTextLabel;
//4 我的投资额下
@property (weak, nonatomic) IBOutlet UILabel *MyInvestmentAmountLabel;
//5 待收总额
@property (weak, nonatomic) IBOutlet UILabel *TotalAmountToBeCollected;
//最后的label
@property (weak, nonatomic) IBOutlet UILabel *lastLabel;
//图标
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *ImageX;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *ImageY;
//主标题
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *MainTitleLabelX;
//标的状态
//标的状态宽
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *BidStatuesW;
//标的状态高
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *BidStatuesH;
//标的状态X
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *BidStatuesX;
//总额
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *TotalLabelY;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *TotalLabelX;
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *TotalNumY;
//我的投资额上
@property (weak, nonatomic) IBOutlet UILabel *MyInvestmentAmount;
//上
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *MyInvestmentAmountX;
//下
@property (weak, nonatomic) IBOutlet NSLayoutConstraint *MyInvestmentAmountLabelX;
//待收总额
@property (weak, nonatomic) IBOutlet UILabel *TotalAmountLabel;
@end
@implementation LHQInvestmentManagementCell
//布局子控件- 屏幕适配
- (void)layoutSubviews{
if(SCREENH <= 480){
self.ImageX.constant = 15;
self.ImageY.constant = 15;
self.MainTitleLabel.font = [UIFont systemFontOfSize:15];
self.MainTitleLabelX.constant = 5;
//标的状态
//标的状态label的宽
if([self.TargetStateLabel.text isEqualToString:@"审核中待验证"]){
self.BidStatuesW.constant = 90;
self.BidStatuesX.constant = 5;
}else if ([self.TargetStateLabel.text isEqualToString:@"提前借款待验证"]){
self.BidStatuesW.constant = 90;
self.BidStatuesX.constant = 5;
}else if ([self.TargetStateLabel.text isEqualToString:@"本金垫付还款中"]){
self.BidStatuesW.constant = 90;
self.BidStatuesX.constant = 5;
}else if ([self.TargetStateLabel.text isEqualToString:@"资金托管提交中"]){
self.BidStatuesW.constant = 90;
self.BidStatuesX.constant = 5;
}else{
self.BidStatuesW.constant = 65;
}
// self.BidStatuesW.constant = 60;
self.BidStatuesH.constant = 20;
self.TargetStateLabel.font = [UIFont systemFontOfSize:12];
//总额
self.TotalLabelX.constant = 15;
self.TotalLabelY.constant = 15;
self.TotalTextLabel.font = [UIFont systemFontOfSize:13];
self.TotalLabel.font = [UIFont systemFontOfSize:13];
//我的投资额
self.MyInvestmentAmount.font = [UIFont systemFontOfSize:13];
//待收总额
self.TotalAmountLabel.font = [UIFont systemFontOfSize:13];
//
self.TotalNumY.constant = 3;
self.MyInvestmentAmountLabel.font = [UIFont systemFontOfSize:13];
self.TotalAmountToBeCollected.font = [UIFont systemFontOfSize:13];
}else if (SCREENH < 667){
self.ImageX.constant = 15;
self.ImageY.constant = 15;
self.MainTitleLabel.font = [UIFont systemFontOfSize:15];
self.MainTitleLabelX.constant = 5;
//标的状态
//标的状态label的宽
if([self.TargetStateLabel.text isEqualToString:@"审核中待验证"]){
self.BidStatuesW.constant = 90;
self.BidStatuesX.constant = 5;
}else if ([self.TargetStateLabel.text isEqualToString:@"提前借款待验证"]){
self.BidStatuesW.constant = 90;
self.BidStatuesX.constant = 5;
}else if ([self.TargetStateLabel.text isEqualToString:@"本金垫付还款中"]){
self.BidStatuesW.constant = 90;
self.BidStatuesX.constant = 5;
}else if ([self.TargetStateLabel.text isEqualToString:@"资金托管提交中"]){
self.BidStatuesW.constant = 90;
self.BidStatuesX.constant = 5;
}else{
self.BidStatuesW.constant = 65;
}
// self.BidStatuesW.constant = 60;
self.BidStatuesH.constant = 20;
self.TargetStateLabel.font = [UIFont systemFontOfSize:12];
//总额
self.TotalLabelX.constant = 15;
self.TotalLabelY.constant = 15;
self.TotalTextLabel.font = [UIFont systemFontOfSize:13];
self.TotalLabel.font = [UIFont systemFontOfSize:13];
//我的投资额
self.MyInvestmentAmount.font = [UIFont systemFontOfSize:13];
//待收总额
self.TotalAmountLabel.font = [UIFont systemFontOfSize:13];
//
self.TotalNumY.constant = 3;
self.MyInvestmentAmountLabel.font = [UIFont systemFontOfSize:13];
self.TotalAmountToBeCollected.font = [UIFont systemFontOfSize:13];
}else if (SCREENH == 667){
//标的状态label的宽
if([self.TargetStateLabel.text isEqualToString:@"审核中待验证"]){
self.BidStatuesW.constant = 110;
}else if ([self.TargetStateLabel.text isEqualToString:@"提前借款待验证"]){
self.BidStatuesW.constant = 110;
}else if ([self.TargetStateLabel.text isEqualToString:@"本金垫付还款中"]){
self.BidStatuesW.constant = 110;
}else if ([self.TargetStateLabel.text isEqualToString:@"资金托管提交中"]){
self.BidStatuesW.constant = 110;
}else{
self.BidStatuesW.constant = 80;
}
self.BidStatuesX.constant = 40;
self.TotalNumY.constant = 5;
self.MyInvestmentAmountX.constant = 80;
self.MyInvestmentAmountLabelX.constant = 35;
}else {
//标的状态label的宽
if([self.TargetStateLabel.text isEqualToString:@"审核中待验证"]){
self.BidStatuesW.constant = 110;
}else if ([self.TargetStateLabel.text isEqualToString:@"提前借款待验证"]){
self.BidStatuesW.constant = 110;
}else if ([self.TargetStateLabel.text isEqualToString:@"本金垫付还款中"]){
self.BidStatuesW.constant = 110;
}else if ([self.TargetStateLabel.text isEqualToString:@"资金托管提交中"]){
self.BidStatuesW.constant = 110;
}else{
self.BidStatuesW.constant = 80;
}
self.BidStatuesX.constant = 70;
self.TotalNumY.constant = 5;
self.MyInvestmentAmountX.constant = 100;
self.MyInvestmentAmountLabelX.constant = 55;
self.TotalLabelY.constant = 30;
}
}
- (void)customedWithModel:(LHQInvestmentManagementModel *)model{
/**
@property(nonatomic)NSString *stutes;
@property(nonatomic)NSString *title;
@property(nonatomic)NSString *bidStutes;
@property(nonatomic)NSString *assets;
@property(nonatomic)NSString *invest;
@property(nonatomic)NSString *lastone;
*/
//1 标识图片
self.IdentificationImage.image = [UIImage imageNamed:model.stutes];
//2 大标题
self.MainTitleLabel.text = model.title;
//3 标的状态
self.TargetStateLabel.text = model.bidStutes;
// if([self.TargetStateLabel.text isEqualToString:@"还款中"]){
//
// self.TargetStateLabel.layer.masksToBounds = YES;
// self.TargetStateLabel.layer.cornerRadius = 6;
// self.TargetStateLabel.backgroundColor = [UIColor colorWithRed:26/255.0 green:199/255.0 blue:62/255.0 alpha:1.0];
//
//
// }else if ([self.TargetStateLabel.text isEqualToString:@"已逾期"]){
//
// self.TargetStateLabel.layer.masksToBounds = YES;
// self.TargetStateLabel.layer.cornerRadius = 6;
// self.TargetStateLabel.backgroundColor = [UIColor colorWithRed:26/255.0 green:199/255.0 blue:62/255.0 alpha:1.0];
//
//
// }else if ([self.TargetStateLabel.text isEqualToString:@"已完成"]){
// self.TargetStateLabel.backgroundColor = [UIColor colorWithRed:26/255.0 green:199/255.0 blue:62/255.0 alpha:1.0];
//
//
// self.TargetStateLabel.layer.masksToBounds = YES;
// self.TargetStateLabel.layer.cornerRadius = 6;
// self.lastLabel.text = @"收益总额";
// }else if ([self.TargetStateLabel.text isEqualToString:@"未满标"]){
// self.lastLabel.text = @"已完成";
// self.TargetStateLabel.layer.masksToBounds = YES;
// self.TargetStateLabel.layer.cornerRadius = 6;
//
// }
self.TargetStateLabel.backgroundColor = [UIColor colorWithRed:26/255.0 green:199/255.0 blue:62/255.0 alpha:1.0];
//
self.TargetStateLabel.layer.masksToBounds = YES;
self.TargetStateLabel.layer.cornerRadius = 6;
//4 总额
self.TotalLabel.text = model.assets;
//5 我的投资额
self.MyInvestmentAmountLabel.text = model.invest;
//6 待收总额
self.TotalAmountToBeCollected.text = model.lastone;
}
- (void)awakeFromNib {
// Initialization code
}
- (void)setSelected:(BOOL)selected animated:(BOOL)animated {
[super setSelected:selected animated:animated];
// Configure the view for the selected state
}
@end
//
// LHQInvestmentManagementModel.h
// 11 - 投资管理 - 李洪强
//
// Created by vic fan on 16/4/15.
// Copyright © 2016年 李洪强. All rights reserved.
//
#import <Foundation/Foundation.h>
@interface LHQInvestmentManagementModel : NSObject
//存放内容的数组
//1 图标
@property(nonatomic)NSString *stutes;
//2 大标题
@property(nonatomic)NSString *title;
//3 标的状态
@property(nonatomic)NSString *bidStutes;
//4 总额
@property(nonatomic)NSString *assets;
//5 我的投资额
@property(nonatomic)NSString *invest;
//6 待收金额
@property(nonatomic)NSString *lastone;
@end
//
// LHQInvestmentManagementModel.m
// 11 - 投资管理 - 李洪强
//
// Created by vic fan on 16/4/15.
// Copyright © 2016年 李洪强. All rights reserved.
//
#import "LHQInvestmentManagementModel.h"
@implementation LHQInvestmentManagementModel
@end
给自定义cell赋值代码的更多相关文章
- 给自定义cell赋值
搭建自定义cell-给自定义cell赋值的思路 1 主控制器 1.1导入头文件 #import "LHQInvestmentManagementCell.h" #import &q ...
- AJ学IOS(17)UI之纯代码自定义Cell实现新浪微博UI
AJ分享,必须精品 先看效果图 编程思路 代码创建Cell的步骤 1> 创建自定义Cell,继承自UITableViewCell 2> 根据需求,确定控件,并定义属性 3> 用get ...
- 李洪强iOS开发之自定义cell的使用
第一步: 创建自定义cell类,继承自UItableVIewcell 第二步: 在sb中布局自己需要的视图控件并且将此cell与我刚刚创建的cell类进行关联.并且连线 第三步: 创建modle类, ...
- iOS开发小技巧--纯代码自定义cell
纯代码自定义cell 自定义cell的步骤(每个cell的高度不一样,每个cell里面显示的内容也不一样) 1.新建一个继承自UITableViewCell的子类 2.在initWithStyle:方 ...
- 通过代码自定义cell 新浪微博页面显示
通过代码自定义cell(cell的高度不一致)(如果高度一致的cell 用xib实现) 1.新建一个集成自UItableVIewCell的类 2.重写initWithStle :方法 - (insta ...
- oc学习之路----通过代码自定义cell
需求背景:由于tableView中每一个cell的数据与布局都不一样,故不能用xib实现功能,这是用代码写自定义cell就有必要了. 步骤 1.新建一个继承自UITableViewCell的类 2.重 ...
- UITableView自定义Cell中,纯代码编程动态获取高度
在UITableView获取高度的代理方法中,经常需要根据实际的模型重新计算每个Cell的高度.直接的做法是在该代理方法中,直接根据模型来返回行高:另 [1]-(CGFloat)tableView:( ...
- iOS UI-微博案例(通过代码自定义Cell)
一.Model BWWeiBo数据模型 #import <Foundation/Foundation.h> @interface BWWeiBo : NSObject @property ...
- 懒加载 字典转模型 自定义cell
1 懒加载: 1> 什么是懒加载? 懒加载又称为延时加载,即在系统调用的时候加载,如果系统不调用则不会加载.所谓的懒加载其实就是重写其 get 方法. 2> 特点:在使用懒加载的时候要 ...
随机推荐
- 【leetcode】Reverse Integer
题目描述: Reverse digits of an integer. Example1: x = 123, return 321Example2: x = -123, return -321 很简单 ...
- zoj 3471(状态压缩)
题目链接:http://acm.zju.edu.cn/onlinejudge/showProblem.do?problemId=4257 dp[state]表示当前状态为state时的所能获得的最大值 ...
- 第一个java程序hello world
首先需要配置环境,没配置的请参考:详细配置教程:http://www.cnblogs.com/qq1871707128/p/6047232.html 切入主题: java基础首先得了解基本的dos命令 ...
- WINDOWS页式内存管理解析
jpg 改 rar
- SecureCRT上传和下载文件(下载默认目录)
SecureCR 下的文件传输协议有ASCII .Xmodem .Ymodem .Zmodem ASCII:这是最快的传输协议,但只能传送文本文件. Xmodem:这种古老的传输协议速度较慢,但由于使 ...
- AOP动态代理解析1-标签的解析
spring.handlers http\://www.springframework.org/schema/aop=org.springframework.aop.config.AopNamespa ...
- 2016.8.14 HTML5重要标签以及属性学习
1.响应网格系统,这使得它很容易把元素放在行,并指定每个元素的相对宽度 . 要注意的是: 在使用网格布局系统之前,要不把布局的元素都添加到同一个<div>中,而且这个<div> ...
- Git 使用命令
$ git add . $ git commit -m "html files created 20160308 16:08" $ git push origin master 设 ...
- 向量时钟Vector Clock in Riak
Riak 是以 Erlang 编写的一个高度可扩展的分布式数据存储,Riak的实现是基于Amazon的Dynamo论文,Riak的设计目标之一就是高可用.Riak支持多节点构建的系统,每次读写请求不需 ...
- sqlserver数据库 去除字段中空格,换行符,回车符(使用replace语句)
SQL中可以使用Replace函数来对某个字段里的某些字符进行替换操作,语法如下: 语法 REPLACE ( original-string, search-string, replace-strin ...