zoukankan      html  css  js  c++  java
  • 自定义cell

    对于各组件和高度都固定的cell,可以自定义xib:

    .使用xib封装一个自定义view的步骤
    1> 新建一个继承UIView的自定义view,假设类名叫做(MJAppView)
    2> 新建一个MJAppView.xib文件来描述MJAppView内部的结构
    3> 修改UIView的类型为MJAppView真是类型
    4> 将内部的子控件跟MJAppView进行属性连线
    5> MJAppView提供一个模型属性
    6> 重写模型属性的set方法,因为在set方法中可以拿到外界传递的模型数据
    7> 把模型数据拆开,分别设置数据到对应的子控件中
    8> 补充:提供一个创建MJAppView的类方法,将读取xib文件的代码屏蔽起来
     
     
    对于高度不一致。组件的展现也不确定的cell可以通过以下步骤:

    通过代码自定义cell(cell的高度不一致)

     1>,新建一个继承UITableViewCell的类

     2>,重写initWithStyle:reuseIdentifier:方法

        添加所有需要显示的子控件(不需要设置子控件的数据和frame,子控件要添加到contentView中)

        进行子控件一次性的属性设置(有些属性只需要设置一次,比如字体、固定的图片)

    3>,提供2个模型

        数据模型:存放文字数据图片数据

        frame模型:存放数据模型所有子控件的framecell的高度

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

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

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

  • 相关阅读:
    mysql 三星索引设置
    mysql 索引长度解释及不使用索引的一种特殊情况
    null作为方法的参数,并在方法里面赋值后的结果是什么?
    线程、调度线程池、异常
    系统服务化,需要考虑的问题
    05-Python之高级语法
    01-python基本语法元素
    04-Python之文件、异常和模块
    03-Python之类
    02-Python之函数
  • 原文地址:https://www.cnblogs.com/shuizhuqing/p/4461469.html
Copyright © 2011-2022 走看看