需求背景:由于tableView中每一个cell的数据与布局都不一样,故不能用xib实现功能,这是用代码写自定义cell就有必要了。

步骤

  

  1.新建一个继承自UITableViewCell的类

  2.重写initWithStyle:reuseIdentifier:方法

    Ø添加所有需要显示的子控件(不需要设置子控件的数据和frame,  子控件要添加到contentView中)
    Ø进行子控件一次性的属性设置(有些属性只需要设置一次, 比如字体\固定的图片)

  3.提供2个模型

    Ø数据模型: 存放文字数据\图片数据
    Øframe模型: 存放数据模型\所有子控件的frame\cell的高度

  4.cell拥有一个frame模型(不要直接拥有数据模型)

  5.重写frame模型属性的setter方法: 在这个方法中设置子控件的显示数据和frame

  6.frame模型数据的初始化已经采取懒加载的方式(每一个cell对应的frame模型数据只加载一次)

最新文章

  1. 利用Hexo搭建个人博客-博客发布篇
  2. rabbitmq inequivalent arg 'x-message-ttl' for queue 'QUEUE_NAME' in vhost '/'异常解决
  3. linux 下各文件夹的功能性介绍。(转载)
  4. apache-flume-1.5.0-bin windows
  5. Git.Framework 框架随手记--ORM新增操作
  6. 1、Hadoop架构
  7. NSTimer实现读秒、倒计时等周期性操作
  8. Itext 中的文本信息绝对定位
  9. 电子科大POJ "整数的千位分隔"
  10. OpenCV配置(Java)
  11. [Q]打印机页边距设置
  12. CF 602B Approximating a Constant Range
  13. Java容器:Map
  14. iOS webservice接口soap协议调用遇到的问题
  15. C++ 命名管道 与Winform跨进程通信
  16. MySQL查询语句练习题,测试基本够用了
  17. PAT 1058 A+B in Hogwarts
  18. HMM模型学习笔记(前向算法实例)
  19. 如何在servlet刚启动时候获取服务器根目录?
  20. cocos2d-x C++ iOS工程集成第三方支付宝支付功能

热门文章

  1. <四> SQL存储过程
  2. HTTP Response Spliting 防范策略研究
  3. MemSQL Start[c]UP 2.0 - Round 2
  4. ANDROID_MARS学习笔记_S02_009_Animation_Interpolator
  5. ide远程调试
  6. oprofile使用方法
  7. hadoop2.2编程:使用MapReduce编程实例(转)
  8. MVC——数据库增删改查(Razor)——Html语法
  9. POJ 1860 Currency Exchange + 2240 Arbitrage + 3259 Wormholes 解题报告
  10. JDK/bin目录下的不同exe文件的用途(转)