IOS Tableview使用xib自定义cell

首先,自定义一个xib文件。拖一个tableviewcell进去。然后,新建一个类继承自UiTableviewCell.。让这个xib文件,的class关联到这个类。比如SCZhuanTiCell。


然后写上identifier.


然后把这个xib文件上的组件和SCZhuanTiCell.h类关联起来。

#import 
#import "ZhuanTiViewController.h"
@interface SCZhuanTiCell : UITableViewCell
@property (weak, nonatomic) IBOutlet UILabel *numLbl;
@property (weak, nonatomic) IBOutlet UIButton *downBtn;
@property (weak, nonatomic) IBOutlet UILabel *titleLbl;
@property (nonatomic,assign)ZhuanTiViewController *delegate2;
@end

在VIewController中,创建一个自定义cell类的属性:

@property (weak,nonatomic)SCZhuanTiCell *mycell;

在cellForRowAtIndexPath这个方法中:

//3.告诉UITableView每一组的每一行显示什么单元格内容
- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath
{
    static NSString *NODE_CELL_ID = @"zhuanti_cell_id";
     _mycell = [tableView dequeueReusableCellWithIdentifier:NODE_CELL_ID];
     _mycell.delegate2 = self;
    if(!_mycell){//如果没有创建mycell的话
        //通过xib的方式加载单元格
         _mycell = [[[NSBundle mainBundle] loadNibNamed:@"SCZhuanTiCell" owner:nil options:nil] firstObject];
        //把模型数据设置给单元格
        _mycell.numLbl.text = @"2B31000";
        _mycell.titleLbl.text = @"公路工程施工技术";
        [_mycell.downBtn setTitle: @"下载" forState: UIControlStateNormal];
        [_mycell.downBtn addTarget:self action:@selector(downClick:) forControlEvents:UIControlEventTouchUpInside];
    }
    return _mycell;
}



注意下,这里设置了mycell.dalegate2的代理指定为self.主要是为了cell上的按钮的回调方法。



cellForRowAtIndexPath


cellForRowAtIndexPath

你可能感兴趣的:(IOS开发)