zoukankan      html  css  js  c++  java
  • 加载xib文件的两种方式

    一、加载xib文件的两种方式

    1.方法一(NewsCellxib文件的名称)

    NSArray *objects = [[NSBundle mainBundle] loadNibNamed:@"NewsCell" owner:nil options:nil];

    2.方法二

    UINib *nib = [UINib nibWithNibName:@"NewsCell" bundle:nil];

    NSArray *objects = [nib instantiateWithOwner:nil options:nil];

    二、设置cell的高度

    1.如果每一行cell的高度都是一样的,直接使用tableViewrowHeight属性设置cell的高度即可

    tableView.rowHeight = 80;

    2.如果每一行cell的高度不一定一样,应该用代理方法设置cell的高度

    - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath

    {

        // 返回indexPath这行对应cell的高度

        return 80;

    }

    三、UITableViewController

    1.UITableViewController内部默认会创建一个UITableView *tableView

    2.UITableViewController内部tableViewdelegate(代理)和dataSource(数据源)就是这个UITableViewController

    3.UITableViewController内部tableView就是控制器的view

    四、自定义cell

    1.通过xib

    1> 一定要注意在xibcell中设置重用标识(reuse identifier

    2> 封装的步骤

    * 新建xib描述cell的样子---DealCell.xib

    * 新建UITableViewCell的子类---DealCell(封装xib内部的所有东西)

    * 修改xibcell的类名(class)为DealCell

    * DealCell中拥有xib中的所有子控件(声明属性、进行连线)

    * 新建模型Deal,封装数据

    * DealCell增加模型属性

    @property (nonatomic, strong) Deal *deal;

    * 重写setDeal:方法,在这个方法中根据模型数据设置cell内部子控件的属性

    * 提供一个类方法,返回从xib中创建好的cell对象

    * xib中的cell添加一个重用标识(比如deal),提供一个类方法,返回重用标识

    * 提供一个类方法,返回cell的高度

    3> 使用cell

    * 设置每一行cell的高度

    * 利用重用标识去缓存池取得cell

    * 如果缓存池没有cell,创建cell

    * 传递模型给cell

    2.通过代码

    1> 新建一个UITableViewCell的子类---WeiboCell

    2> 在创建cell的时候(initWithStyle:reuseIdentifier:方法中)添加cell内部需要使用的子控件

    (注意:只管创建添加子控件,先不要去管子控件的位置和尺寸)

    3> 新建一个模型类---Weibo,增加对应的数据属性

    4> WeiboCell增加一个Weibo模型属性,在拿到Weibo模型数据的同时设置子控件的属性

    5> 重写setWeibo:方法,在这里面取出Weibo模型的数据显示到子控件上

    如果你错过了一天,那么你就真的错过了一天……ues.hk
  • 相关阅读:
    Filter (seach and replace) array of bytes in an InputStream
    Eclipse上GIT插件EGIT使用手册之一_安装EGIT插件
    JAVA如何插入MySql的datetime类型的简单的例子
    版本控制工具比较CVS,SVN,GIT
    jQuery ajax get() 方法
    wubi 安装 ubuntu
    怎样把水货E72升级后英文变中文
    中国象棋for Ubuntu
    Ubuntu技巧:Ubuntu软件安装方法完全指南[转]
    关于linux下安装oracle之后,重启系统后oracle失败的问题[转]
  • 原文地址:https://www.cnblogs.com/myios/p/3670727.html
Copyright © 2011-2022 走看看