<pre name="code" class="objc">自定义cell
1.创建mycell继承于UITableviewcell
2.在mycell.h中定义属性要添加的控件
@property(nonatomic,retain)UIImageView *leftImageView;
@property(nonatomic,retain)UILabel *upLabel;
3.在mycell.m中释放
-(void)dealloc{
[_downLabel release];
[_upLabel release];}
4.自定义初始化
- (instancetype)initWithStyle:(UITableViewCellStyle)style reuseIdentifier:(NSString *)reuseIdentifier{
self=[super initWithStyle:style reuseIdentifier:reuseIdentifier];
if (self) {
[self createView];
}
return self;
}
5.
-(void)createView{
self.leftImageView=[[UIImageView alloc] init];
self.leftImageView.backgroundColor=[UIColor orangeColor];
[self.contentView addSubview:self.leftImageView];
[_leftImageView release];
//创建有view
self.rightImageView=[[UIImageView alloc] init];
self.rightImageView.backgroundColor=[UIColor orangeColor];
[self.contentView addSubview:self.rightImageView];
[_rightImageView release];
}
6.
- (void)layoutSubviews{
[super layoutSubviews];
self.leftImageView.frame=CGRectMake(0, 0, WIDTH/3, HEIGHT);
self.rightImageView.frame=CGRectMake(2*WIDTH/3, 0, WIDTH/3, HEIGHT);
self.upLabel.frame=CGRectMake(WIDTH/3, 0, WIDTH/3, HEIGHT/2);
self.downLabel.frame=CGRectMake(WIDTH/3, HEIGHT/2, WIDTH/3, HEIGHT/2);
}
7.mainControllerView中必执行协议中用自定义的cell创建cell
-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath{
static NSString *reuse=@"reuse";
MyCell *cell=[tableView dequeueReusableCellWithIdentifier:reuse];
if (!cell) {
cell=[[[MyCell alloc] initWithStyle: UITableViewCellStyleDefault reuseIdentifier:reuse] autorelease];
}
cell.upLabel.text=self.arr[indexPath.row];
cell.leftImageView.image=[UIImage imageNamed:@"0.jpg"];
cell.rightImageView.image=[UIImage imageNamed:@"1.jpg"];
self.tabelView.rowHeight=100;
return cell;
}
iOS自定义cell的写法
最新推荐文章于 2021-07-20 21:52:12 发布