博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用XIB创建自适应高度的TableviewCell
阅读量:7137 次
发布时间:2019-06-28

本文共 1336 字,大约阅读时间需要 4 分钟。

  我们都知道利用XIB可以很轻松的设置一个label为自适应高度,但如果将一个label放在tableviewcell上面,并且这个cell还想用XIB描述,这个时候就需要先确定label的高度再确定cell的高度,最后才能显示到屏幕上。

  所以在这里就简单的说一下如何实现用XIB描述一个自适应高度的cell

1.首先用XIB创建一个cell:

  

2.确定“买家留言”label的位置,再设置右边label约束为:距左,距右,还有跟买家留言label顶部对齐。最后再设置右边label的Lines为0

3.在实体类的.h文件里:

@interface CustomHeightCell : UITableViewCell@property (weak, nonatomic) IBOutlet UILabel *title;@property (weak, nonatomic) IBOutlet UILabel *messgae;@property (nonatomic, copy) NSString* content;@property (nonatomic, assign) CGFloat cellHeight;@end

title:“买家留言”label

message:显示留言信息的label

content: 留言内容

cellHeight:通过留言内容计算出来的cell高度

4..m文件中

@implementation CustomHeightCell- (void)awakeFromNib {    [super awakeFromNib];    self.messgae.textColor = [UIColor lightBlackTextColor];    self.typeTitle.textColor = [UIColor lightGrayTextColor];}- (void)setContent:(NSString *)content{    _content = content;    CGRect r = [content boundingRectWithSize:CGSizeMake(self.messgae.frame.size.width,10000) options:(NSStringDrawingUsesLineFragmentOrigin | NSStringDrawingTruncatesLastVisibleLine) attributes:@{NSFontAttributeName:[UIFont systemFontOfSize:13.f]} context:nil];    self.cellHeight = r.size.height;    self.messgae.text = content;}@end

在这里要注意:设置的字体大小(13.f)要跟XIB里面messageLabel的字体大小一样,这样才能保证计算准确。

 

最后正常的调用这个cell就行了。

 

转载于:https://www.cnblogs.com/Tempation/p/5392153.html

你可能感兴趣的文章
linux命令详解之useradd命令使用方法[linux下 添加用户、删除用户、修改用户密码、用户组管理]...
查看>>
QTcpSocket使用过程中的一些问题记录
查看>>
Discuz常见小问题-如何关闭验证码
查看>>
keystone nova v2 python
查看>>
oracle 11g创建数据库教程
查看>>
Logstash之三:命令行中常用的命令
查看>>
实现自动构建编译javaweb项目并发布到N台服务器
查看>>
Java通过Fork/Join来优化并行计算
查看>>
Spring第四弹—–Spring的三种实例化bean的方式
查看>>
[React Router v4] Render Catch-All Routes with the Switch Component
查看>>
BZOJ 2916: [Poi1997]Monochromatic Triangles [计数]
查看>>
idea android 开发
查看>>
《转》Python学习(17)-python函数基础部分
查看>>
Unix(AIX) set命令
查看>>
spring使用@Value标签读取.properties文件的中文乱码问题的解决
查看>>
Oracle 11gR2 RAC监听器原理介绍
查看>>
Oracle HA 之 测试RAC的功能
查看>>
CentOS7 Failed to start LSB: Bring up/down
查看>>
关于程序猿的几个阶段!
查看>>
Linux内核中断处理体系分析
查看>>