给自定义cell赋值
搭建自定义cell-给自定义cell赋值的思路
1 主控制器
1.1导入头文件
#import "LHQInvestmentManagementCell.h"
#import "LHQInvestmentManagementModel.h"
1.2遵守tableview的协议 数据源方法的协议
1.3声明全局的可变数组并且懒加载
1.4在viewDidload方法里加载xib 调用创建数据的方法
1.5写一个方法创建数据
循环给每一个cell里面的数据数组赋值
初始化LHQInvestmentManagementModel类
定义一个字典用来存放数据分别给每个Key对应
然后用字典来给model中每个属性赋值
[model setValuesForKeysWithDictionary:dic];
把赋值好的model加到定义好的 可变数组中
[self.dataArr addObject:model];
[self.tableView reloadData];
1.6 tableview的数据源方法
返回几组
返回几行
每一行显示的内容:
初始化
LHQInvestmentManagementCell
初始化model,并且用数组中的每一组数据给model赋值
将初始化好的model传到LHQInvestmentManagementCell中的customedWithModel这个方法中
设置每一行的高度
//借款状态对照码
+ (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;
}
2 创建LHQInvestmentManagementModel类,继承自NSObjc
//定义以下的属性
//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;
3 创建LHQInvestmentManagementCell类
继承自UITableViewCell
3.1 声明一个方法
-(void)customedWithModel:(LHQInvestmentManagementModel *)model;
3.2将xib中每一个控件拖出来
3.3 实现声明的-(void)customedWithModel:(LHQInvestmentManagementModel *)model方法
//1 标识图片
self.IdentificationImage.image = [UIImage imageNamed:model.stutes];
//2 大标题
self.MainTitleLabel.text = model.title;
//3 标的状态
self.TargetStateLabel.text = model.bidStutes;
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;
总结:
model中声明属性,在cell中将每一个属性脱线,并且写一个方法,用model中属性赋值
同时来到控制器中给model设置数据 MVC