zoukankan      html  css  js  c++  java
  • UITableView的自定义cell

    1  初始化 cell的方法中

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

    其内部控件的frame给CGRectZero

    并且将cell内部的控件添加到 self.contentView 上面

    2 重写布局方法

    - (void)layoutSubviews;

    内部一定要执行父类的方法

    [super layoutSubviews];

    内部写控件的frame值

    3 关于模型可以写在cell内部,声明为属性,方便使用

    但是 要重写setter方法:

    - (void)setStudent:(Student *)student{

        if (_student != student) {

            [_student release];

            _student = [student retain];

            

            _headerImageView.image = [UIImage imageNamed:_student.icon];

            _nameLable.text = _student.name;

            _phoneLable.text = _student.phoneNumber;

            _introduceLable.text = _student.introduce;

        }

    }

    4 cell内部可以声明类方法:

    根据字符串的长度 求文本的高度 

    + (CGFloat)heightForString:(NSString *)string{

        NSDictionary *dic = [NSDictionary dictionaryWithObjectsAndKeys:[UIFont systemFontOfSize:17],NSFontAttributeName, nil]; nsfontattributename

        CGRect rect = [string boundingRectWithSize:CGSizeMake(3 * kImageWidth, 1000) options:NSStringDrawingUsesLineFragmentOrigin attributes:dic context:nil];

        return rect.size.height;

    }//类方法

  • 相关阅读:
    [IOI2013]Dreaming
    Lost Cows
    Mobile Service
    [POI2005]Bank notes
    [CTSC2007]动物园zoo
    [CF1093F]Vasya and Array
    [雅礼集训 2017 Day1]市场
    [APIO2014]序列分割
    [CEOI2004]锯木厂选址
    [APIO2010]特别行动队
  • 原文地址:https://www.cnblogs.com/jiurong001/p/5186031.html
Copyright © 2011-2022 走看看