文档章节

Objective-C --- - UITableView 三 自定义cell(梳理总结)

都英俊兮
 都英俊兮
发布于 2016/06/14 21:12
字数 294
阅读 105
收藏 1
oc

1.准备

 

 

2.实例化_tableView

    _tableView = [[UITableView alloc]initWithFrame:[UIScreen mainScreen].bounds];

    [self.view addSubview:_tableView];

    _tableView.delegate = self;

    _tableView.dataSource = self;

//    xib的注册方式

//    [_tableView registerNib:[UINib nibWithNibName:kCellID bundle:nil] forCellReuseIdentifier:kCellID];

//    纯代码的注册方式

    [_tableView registerClass:[MMTableViewCell class] forCellReuseIdentifier:MMCellID];

3.代理方法中 设置

-(NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section{

    return self.dataList.count;

}

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

    return 100.0f;

}

 

-(UITableViewCell*)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{

    这里没什么区别

//    CustemTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:kCellID];    

    MMTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:MMCellID];

//    在这里从数据源中取出数据 给到cell中

    [cell getModel:self.dataList[indexPath.row]];

      return cell;}

 

4.自定义的cell文件中

xib中,因为约束不好截图  只能给个大概

创建的时候会走的方法是 :

- (void)awakeFromNib {  [super awakeFromNib];}

 

纯代码中

1.准备

#define KHeightOfCell 100

#define kTagOfDesc 1111

2.设置cell

//注册时候触发的方法

-(instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{

    if (self = [super initWithStyle: style reuseIdentifier:reuseIdentifier]) {

        UIImageView *imageView = [[UIImageView alloc]initWithFrame:CGRectMake(10, 10, KHeightOfCell - 20, KHeightOfCell - 20)];

        imageView.image = [UIImage imageNamed:@"1"];

        

        UILabel *title = [[UILabel alloc]initWithFrame:CGRectMake(CGRectGetMaxX(imageView.frame), CGRectGetMinY(imageView.frame), 100, 20)];

        title.text = @"标题";

        UILabel *desc = [[UILabel alloc]initWithFrame:CGRectMake(CGRectGetMaxX(imageView.frame), CGRectGetMaxY(imageView.frame) - 20, 100, 20)];

        desc.text = @"描述";

        desc.tag = kTagOfDesc;

        [self.contentView addSubview:imageView];

        [self.contentView addSubview:title];

        [self.contentView addSubview:desc];

    }

    return self;

}

 

结果展示

 

 

 

© 著作权归作者所有

共有 人打赏支持
都英俊兮
粉丝 2
博文 36
码字总数 11379
作品 0
深圳
iOS工程师
iOS UITableView代理方法详解

iOS UITableView的代理方法详解 一、补充 在上一篇博客中,http://my.oschina.net/u/2340880/blog/404605,我将IOS中tableView(表视图)的一些常用方法总结了一下,这篇将tableView的代理方法...

珲少
2015/04/22
0
2
ios学习--TableView详细解释

ios学习--TableView详细解释 分类: ios Object-C2012-05-17 08:48 1714人阅读 评论(0) 收藏 举报 -、建立 UITableView (NSArray )sectionIndexTitlesForTableView:(UITableView )tableView......

wcj
2012/11/01
0
0
IOS TableView的Cell高度自适应,UILabel自动换行适应

项目的源码下载地址:http://download.csdn.net/detail/swingpyzf/6835365 需求: 1、表格里的UILable要求自动换行 2、创建的tableViewCell的高度会自动适应内容的高度 一、用xcode构建项目,...

嘻哈开发者
2014/10/14
0
0
UITableView 的更多属性

UITableView的初始化 [csharp] UITableView tableview= [[UITableView alloc] initWithFrame:CGRectMake(0, 0, 320, 420)]; [tableview setDelegate:self]; [tableview setDataSource:self]......

meilidashijie
2013/01/04
0
1
UI_09 UITableView(表视图)

⼀、表视图 在iOS中,要实现表格数据展示,最常用的做法就是使用UITableView。UITableView继承自UIScrollView,因此支持垂直滚动,而且性能极佳 1、表示图的样式 UITableViewStylePlain UITa...

黑伞将军
2015/08/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

创建第一个react项目

sudo npm i -g create-react-app@1.5.2 create-react-app react-app cd react-apprm -rf package-lock.jsonrm -rf node_modules #主要是为了避免报错npm installnpm start......

lilugirl
今天
3
0
在浏览器中进行深度学习:TensorFlow.js (八)生成对抗网络 (GAN)

Generative Adversarial Network 是深度学习中非常有趣的一种方法。GAN最早源自Ian Goodfellow的这篇论文。LeCun对GAN给出了极高的评价: “There are many interesting recent development...

naughty
今天
0
0
搬瓦工镜像站bwh1.net被DNS污染,国内打不开搬瓦工官网

今天下午(2018年10月17日),继搬瓦工主域名bandwagonhost.com被污染后,这个国内的镜像地址bwh1.net也被墙了。那么目前应该怎么访问搬瓦工官网呢? 消息来源:搬瓦工优惠网->搬瓦工镜像站b...

flyzy2005
今天
6
0
SpringBoot自动配置

本篇介绍下,如何通过springboot的自动配置,将公司项目内的依赖jar,不需要扫描路径,依赖jar的情况下,就能将jar内配置了@configuration注解的类,创建到IOC里面 介绍下开发环境 JDK版本1.8 spr...

贺小五
今天
5
0
命令行新建Maven多项目

参考地址 # DgroupId 可以理解为包名# DartifactId 可以理解为项目名mvn archetype:generate -DgroupId=cn.modfun -DartifactId=scaffold -DarchetypeArtifactId=maven-archetype-quickst......

阿白
今天
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部