【iOS学习笔记】iOS ⾃自定义cell的步骤

⾃自定义cell的步骤(每个cell的⾼高度不⼀一样,每个cell⾥里⾯面显⽰示的 内容也不⼀一样)

新建⼀一个继承⾃自UITableViewCell的⼦子类

2. 在initWithStyle:方法中进行⼦控件的初始化
1> 将有可能显⽰示的所有⼦子控件都添加到contentView中
2> 顺便设置⼦子控件的⼀一些属性(⼀一次性的设置:字体、⽂文字颜⾊色、 背景

3. 提供2个模型
1> ⼀一个是数据模型(⽂文字数据 + 图⽚片数据)
2> ⼀一个是frame模型(数据模型 + 所有⼦子控件的frame + cell 的⾼高度)

4. cell应该提供⼀一个frame模型属性
1> 将frame模型传递给cell
2> cell根据frame模型给⼦子控件设置frame,根据数据模型给⼦子控 件设置数据
3> cell根据数据模型决定显⽰示和隐藏哪些⼦子控件

5. 在tableView的代理⽅方法返回cell的⾼高度 

 
计算文字label的尺寸方法
 

- (CGSize)sizeWithText:(NSString *)text font:(UIFont *)font maxW:(CGFloat)maxW

{

    NSMutableDictionary *attrs = [NSMutableDictionary dictionary];

    attrs[NSFontAttributeName] = font;

    CGSize maxSize = CGSizeMake(maxW, MAXFLOAT);

    return [text boundingRectWithSize:maxSize options:NSStringDrawingUsesLineFragmentOrigin attributes:attrs context:nil].size;

}

- (CGSize)sizeWithText:(NSString *)text font:(UIFont *)font

{

    return [self sizeWithText:text font:font maxW:MAXFLOAT];

}

 
原文地址:https://www.cnblogs.com/pjl0426/p/4934892.html