IOS UITableview 的Cell 封装

感觉不错的代码。收藏下。

#import "GDBookTableViewCell.h"
#import "GDBook.h"

@interface GDBookTableViewCell ()

@property (weak, nonatomic) IBOutlet UIImageView *iconLabel;
@property (weak, nonatomic) IBOutlet UILabel *authorLabel;
@property (weak, nonatomic) IBOutlet UILabel *booknameLabel;
@property (weak, nonatomic) IBOutlet UILabel *progressLabel;

@end

@implementation GDBookTableViewCell

+(instancetype)cellWithTableView:(UITableView *)tableView
{
    static NSString *ID = @"bookCell";

    GDBookTableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:ID];

    if (cell == nil) {
        cell = [[[NSBundle mainBundle] loadNibNamed:@"GDBookTableViewCell" owner:nil options:nil] lastObject];
    }

    return cell;
}

-(void)setBook:(GDBook *)book
{
    _book = book;

    self.booknameLabel.text = book.name;
}

@end

调用的地方:

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    GDBookTableViewCell *cell = [GDBookTableViewCell cellWithTableView:tableView];

    // 设置数据
    GDBook *book = self.books[indexPath.row];
    cell.book = book;

    return cell;
}

然后在

setBook里实现对控件的绑定。

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-11-10 14:06:08

IOS UITableview 的Cell 封装的相关文章

IOS UItableview UIcollectionview cell高度自适应

1.tableviewcell 高度自适应 主要方法: 计算cell高度[cell.contentview systemLayoutSizeFittingSize:UILayoutFittingCompressedSize]; // NSLayoutConstraint 使用条件 添加相对约束 ios 7.0 cell 高度计算修改: - (CGFloat)tableView:(UITableView )tableView estimatedHeightForRowAtIndexPath:(NS

iOS UITableView的cell重用标识

转自   http://www.2cto.com/kf/201308/238449.html UITableView继承自UIScrollview,是苹果为我们封装好的一个基于scroll的控件.上面主要是一个个的 UITableViewCell,可以让UITableViewCell响应一些点击事件,也可以在UITableViewCell中加入 UITextField或者UITextView等子视图,使得可以在cell上进行文字编辑. UITableView中的cell可以有很多,一般会通过重用

iOS UITableview的cell自适应

背景:这几天做项目,又遇到了cell的自适应高度问题 首先我们必须要知道UITableViewcell 的代理执行顺序,在iOS7出现了一个代理方法叫:tableView: estimatedHeightForRowAtIndexPath:,首先我们要知道在使用UITableViewcell的时候必须计算cell的高度,那如果cell的内容是动态的呢?这个时候我们就必须动态的返回高度了,这就回到了我们项目中遇到的问题.知道了这一点,接下来我们就必须知道UITableViewde 的代理方法的执行

iOS - UITableView 编辑(cell的插入, 删除, 移动)

UITableView Cell的插入/删除 核心API Class : UITableView Delegate : UITableViewDataSource, UITableViewDelegate 涉及的API:(API的官方详细注释详见本章结尾) /** TableView 进入或退出编辑状态(TableView 方法). */ - (void)setEditing:(BOOL)editing animated:(BOOL)animate /** 确定哪些行的cell可以编辑 (UIT

iOS UITableView删除cell分割线

UITableView是UITableViewStylePlain风格的,这样整个TableView都会被分割线分隔开,不管有没有数据,非常丑. 为了可以自定义cell的分割线: 解决方案: 将UITableView的separatorStyle属性设置为UITableViewCellSeparatorStyleNone即可,如下: tableView.separatorStyle = UITableViewCellSeparatorStyleNone;

iOS项目开发小技巧 (三) --UITableView实现Cell左划删除等自定义功能

今天来介绍下iOS开发中UITableView的Cell左划实现微信中置顶,删除等功能.该功能在iOS8.0以前是需要很复杂的实现,不过github上应该有现成demo,不过今天介绍的是在iOS8.0以后苹果新推出的api,来实现Cell左划自定义控件. 1. 首先创建UITableView视图,实现其俩个代理,UITableViewDelegate和UITableViewDataSource,该处代码就不说了,主要是俩个回调方法 -(UITableViewCell *)tableView:(U

ios UITableView 获取点击cell对象

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { UITableViewCell *cell= [tableView cellForRowAtIndexPath:indexPath]; // 获取cell 对象 UILabel *name = (UILabel *)[cell.contentView viewWithTag:111]; // 获取昵称 _inp

ios UITableview 刷新某一个cell 或 section

ios UITableview 刷新某一个cell 或 section     //一个section刷新 NSIndexSet *indexSet=[[NSIndexSet alloc]initWithIndex:2]; [tableview reloadSections:indexSet withRowAnimation:UITableViewRowAnimationAutomatic]; //一个cell刷新 NSIndexPath *indexPath=[NSIndexPath inde

iOS如何固定UITableView中cell.imageView.image的图片大小

凡是进行ios开发的,基本上都会遇到要展示列表,或者即使不是标准列表,但由于数量不固定,也需要如同列表一样从上往下显示.加载的情况.这些,都绕不过对UITableView的使用. 在iOS开发中UITableView可以说是使用最广泛的控件,我们平时使用的软件中到处都可以看到它的影子,类似于微信.QQ.新浪微博等软件基本上随处都是UITableView.当然它的广泛使用自然离不开它强大的功能. 我们经常在开发过程中会用到默认UITableView的cell.imageView.image,如果图