搭建自定义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赋值的更多相关文章

  1. 给自定义cell赋值代码

    // //  ViewController.m //  11 - 投资管理 - 李洪强 // //  Created by vic fan on 16/4/8. //  Copyright © 201 ...

  2. 李洪强iOS开发之自定义cell的使用

    第一步: 创建自定义cell类,继承自UItableVIewcell 第二步: 在sb中布局自己需要的视图控件并且将此cell与我刚刚创建的cell类进行关联.并且连线  第三步: 创建modle类, ...

  3. 自定义cell

    思路就是创建模型,自定义cell,然后在主控制器中完成,首先要观察plist文件: Contact.h #import <Foundation/Foundation.h> @interfa ...

  4. 懒加载 字典转模型 自定义cell

    1 懒加载: 1>  什么是懒加载? 懒加载又称为延时加载,即在系统调用的时候加载,如果系统不调用则不会加载.所谓的懒加载其实就是重写其 get 方法. 2>  特点:在使用懒加载的时候要 ...

  5. UI学习笔记---第十一天UITableView表视图高级-自定义cell

    自定义cell,多类型cell混合使用,cell自适应高度 自定义cell就是创建一个UITableViewCell的子类 把cell上的空间创建都封装在子类中,简化viewController中的代 ...

  6. iOS学习之UI自定义cell

    一.自定义Cell 为什么需要自定义cell:系统提供的cell满足不了复杂的样式,因此:自定义Cell和自定义视图一样,自己创建一种符合我们需求的Cell并使用这个Cell.如下图所示的这些Cell ...

  7. UITabelView 高级(自定义Cell)

    自定义一个Cell 当我们要显示复杂数据的时候,例如要做一个扣扣聊天界面,或是新闻列表,系统的行已经不能满足我们的要求,这个时候我们可以通过自定义这个行,让他显示更多复杂结构的样式. 自定义cell就 ...

  8. 08-UIKit(UITableTableViewCell、自定义Cell、xcode调试)

    目录: 1. UITableTableViewCell 2. tag技术 3. 自定义Cell 4. 用nib文件构造自定义的静态表 5. TableView数据模型总结 6. Xcode代码调试 & ...

  9. IOS开发中UITableView(表视图)的滚动优化及自定义Cell

    IOS开发中UITableView(表视图)的滚动优化及自定义Cell IOS 开发中UITableView是非常常用的一个控件,我们平时在手机上看到的联系人列表,微信好友列表等都是通过UITable ...

随机推荐

  1. [JavaCore] 微信手机浏览器版本判断

    公司要做微支付,微信浏览器版本要大于5 package com.garinzhang.web.weixin; import org.apache.commons.lang.StringUtils; i ...

  2. POJ 1840 Eqs 二分+map/hash

    Description Consider equations having the following form: a1x13+ a2x23+ a3x33+ a4x43+ a5x53=0 The co ...

  3. javascript中时间的手动创建date的方式

    new Date("month dd,yyyy hh:mm:ss"); new Date("month dd,yyyy"); new Date(yyyy,mth ...

  4. Jquery禁止/恢复按钮与文本框代码

    最近,加入了一个小项目,由浩哥带领我们几个人一起开发一个东西.幸运的是,我和胡志婷分到了一组,她可是一个具有丰富经验的牛人,对我也很好,哈哈. --背景 说点正事,最近,我们在进行项目的时候,提到了一 ...

  5. $(function(){})与window.onload的区别

    不太一样window.onload是在页面所有的元素都加载完成后才触发$(function(){})是在页面的dom结构加载完毕后就触发 dom里的内容不一定都已经加载完成比如说一个页面有好多图片 而 ...

  6. JavaScript设计模式——单体模式

    一:单体模式简介: 是什么:将代码组织为一个逻辑单元,这个单元中的代码通过单一的变量进行访问.只要单体对象存在一份实例,就可以确信自己的所有代码使用的是同样的全局资源. 用途:1.用来划分命名空间,减 ...

  7. CSS3-样式继承,层叠管理,文本格式化

  8. Js判断客户端是iphone还是安卓

    <script> var u = navigator.userAgent; var isAndroid = u.indexOf('Android') > -1 || u.indexO ...

  9. 最火的.NET开源项目

    综合类 微软企业库 微软官方出品,是为了协助开发商解决企业级应用开发过程中所面临的一系列共性的问题, 如安全(Security).日志(Logging).数据访问(Data Access).配置管理( ...

  10. MFC CString to char* (Visual Studio 2015 亲测可用)

    右键划线部分,打开属性,然后找到:配置属性-常规-字符集,选择:使用多字节字符集 然后,char *c;CString str; 就可以 strcpy(c,str); 如果觉得好用,请点个赞,谢谢!