动态(xib)cell动态布局

动态(xib)cell布局的总结:
现在于label 为例,
1,简单的设置label 的 top left bottom right 限制,
此时我们如果要想让label 显示多行,label的 lines = 0属性 和 断行属性 是必须要设置的,然后 此时 还必须要 设置 label 的宽度(preferredMaxLayoutWidth,这里有个问题,就是label 为什么要设置宽度?已经设置好了框架( top left bottom right),系统应该能智能识别其宽度?但是很不幸的是,系统好像没那么智能,不能识别,但是如果两个label 在同一行时,第一label 设置的宽度,第二个就不用设置宽度)。
2,设置宽度的时候 不能同时 top left bottom right 和 width 限制。肯定的,我们要考虑到手机旋转的时候 它的 right 或者 left 是会变化的。
3,计算 cell 的高度的时候 我们 可以 以牺牲一个 cell 为代价来 计算 cell 的高度 ,此时我们要定义一个全局变量的cell ,然后往cell 中填入内容,计算高度的时,如果 此时没有 在xib 中设置 宽度限制,这时 要在这里来设置 e.g.:cell.nameLabel.preferredMaxLayoutWidth = CGRectGetMaxX(cell.bounds)-32 (当然这个东西可以写在cell.m文件中 的 layoutsubView 中 但是此时 就应该调用 【cell layoutifneed 】),后 通过[cell.contentView systemLayoutSizeFittingSize:UILayoutFittingCompressedSize].height+1 的高度。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值