1.準備spa
2.實例化_tableView代理
_tableView = [[UITableView alloc]initWithFrame:[UIScreen mainScreen].bounds];get
[self.view addSubview:_tableView];it
_tableView.delegate = self;io
_tableView.dataSource = self;table
// xib的註冊方式class
// [_tableView registerNib:[UINib nibWithNibName:kCellID bundle:nil] forCellReuseIdentifier:kCellID];List
// 純代碼的註冊方式queue
[_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;
}
結果展現