给自定义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
给自定义cell赋值的更多相关文章
- 给自定义cell赋值代码
// // ViewController.m // 11 - 投资管理 - 李洪强 // // Created by vic fan on 16/4/8. // Copyright © 201 ...
- 李洪强iOS开发之自定义cell的使用
第一步: 创建自定义cell类,继承自UItableVIewcell 第二步: 在sb中布局自己需要的视图控件并且将此cell与我刚刚创建的cell类进行关联.并且连线 第三步: 创建modle类, ...
- 自定义cell
思路就是创建模型,自定义cell,然后在主控制器中完成,首先要观察plist文件: Contact.h #import <Foundation/Foundation.h> @interfa ...
- 懒加载 字典转模型 自定义cell
1 懒加载: 1> 什么是懒加载? 懒加载又称为延时加载,即在系统调用的时候加载,如果系统不调用则不会加载.所谓的懒加载其实就是重写其 get 方法. 2> 特点:在使用懒加载的时候要 ...
- UI学习笔记---第十一天UITableView表视图高级-自定义cell
自定义cell,多类型cell混合使用,cell自适应高度 自定义cell就是创建一个UITableViewCell的子类 把cell上的空间创建都封装在子类中,简化viewController中的代 ...
- iOS学习之UI自定义cell
一.自定义Cell 为什么需要自定义cell:系统提供的cell满足不了复杂的样式,因此:自定义Cell和自定义视图一样,自己创建一种符合我们需求的Cell并使用这个Cell.如下图所示的这些Cell ...
- UITabelView 高级(自定义Cell)
自定义一个Cell 当我们要显示复杂数据的时候,例如要做一个扣扣聊天界面,或是新闻列表,系统的行已经不能满足我们的要求,这个时候我们可以通过自定义这个行,让他显示更多复杂结构的样式. 自定义cell就 ...
- 08-UIKit(UITableTableViewCell、自定义Cell、xcode调试)
目录: 1. UITableTableViewCell 2. tag技术 3. 自定义Cell 4. 用nib文件构造自定义的静态表 5. TableView数据模型总结 6. Xcode代码调试 & ...
- IOS开发中UITableView(表视图)的滚动优化及自定义Cell
IOS开发中UITableView(表视图)的滚动优化及自定义Cell IOS 开发中UITableView是非常常用的一个控件,我们平时在手机上看到的联系人列表,微信好友列表等都是通过UITable ...
随机推荐
- EF Core 1.0中使用Include的小技巧
(此文章同时发表在本人微信公众号"dotNET每日精华文章",欢迎右边二维码来关注.) 题记:由于EF Core暂时不支持Lazy Loading,所以利用Include来加载额外 ...
- WebRTC音视频引擎研究(1)--整体架构分析
WebRTC技术交流群:234795279 原文地址:http://blog.csdn.net/temotemo/article/details/7530504 1.WebRTC目的 ...
- C语言中的位操作(14)--反转比特位
本篇文章主要讲述几种反转比特位的方法: 将一个32位数:abcd efgh 转置为hgfe dcba 1.常规方法 unsigned int v; // 目标待转置数 unsigned int r = ...
- java线程之——sleep()与wait()的区别
sleep()是Thread的方法,wait()是Object的方法 如果线程进入了同步锁,sleep不会释放对象锁,wait会释放对象锁 sleep的作用就是让正在执行的线程主动让出CPU,给其它线 ...
- PopupWindow响应返回键的问题
假设情景是这样的:在一个Activity中弹出一个PopupWindow,要求在按返回键时关闭该PopupWindow. 如果该PopupWindow是无焦点的(默认情况),那么可以在Activity ...
- Apache Kafka for Item Setup
At Walmart.com in the U.S. and at Walmart's 11 other websites around the world, we provide seamless ...
- 判断网络是否连接 和 判断GPS是否连接
//判断网络是否连接 public static Boolean isNetworkEnabled(Context context){ int status=-1 //设置默认连接的状态为-1 Co ...
- linux read简单用法
#!/bin/bash #read chars into var read -n var echo $var #read chars without showing it read -s var ec ...
- tomcat 部署spring工程乱码解决方案
tomcat的server.xml文件,Connector标签增加useBodyEncodingForURI="true"属性 web.xml如下配置 <filter> ...
- Codeforces 653D Delivery Bears(最大流)
题目大概说有一张n个点m条边的简单有向图,每条边只能允许一定总量的货物通过.要让x只熊从1点到n点运送货物,每只熊都要运送且运送的货物重量都一样,求该重量的最大值. 二分重量判断是否成立. 如果已知重 ...