Jas*_*ary 4 uitableview ios autolayout
我正在尝试使用自动布局创建动态消息单元格.

在大多数情况下,单元格正确定位,具有以下约束条件的自动布局:

我的第一个问题是消息标签(可复制标签)宽度受到限制.这似乎可以通过使用此问题中setPreferredMaxLayoutWidth:描述的方法来解决.
身高仍然是个问题.正如您所看到的,消息泡沫仍在切断.另外,我不确定如何确定表视图的消息单元格高度.
我预计自动布局会以某种方式正常工作.我已经在这里阅读了答案,但步骤似乎很多.
首先,自动布局是否比传统的帧算法更复杂?
其次,使用自动布局,如何确定结果单元格的高度?
我完全使用自动布局,你说的是有点问题.我不想修改为UITable的性能目的计算内在大小的方式.
所以我使用了一种非常简单的方法,最终是正确的.如果您的单元格很简单,那么如果您的单元格包含多个可变文本,则可能会变得如此困难.
我正常地定义了我的细胞,在那里你可以放一个适合插图的UILabel(没问题).然后,在表数据源中,直接定义单元格的高度:
- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
return [TEXTOFYOURCELL sizeWithFont:[UIFont systemFontOfSize:14] constrainedToSize:CGSizeMake(300, 1000)].height + 31; // Here it's defined for 15 of top and bottom insets, define +1 than the size of the cell is important.
}
Run Code Online (Sandbox Code Playgroud)
编辑: 这里有一些关于单元格中UILabel的代码(在init方法中).
__titleLabel = [UILabel new];
__titleLabel.numberOfLines = 0;
[self.contentView addSubview:__titleLabel]; // adding to contentView rather than self is very important !
[__titleLabel keepInsets:UIEdgeInsetsMake(0, 15, 0, 15)];
Run Code Online (Sandbox Code Playgroud)
我使用这个API:https://github.com/iMartinKiss/KeepLayout来管理自动布局更简单.
| 归档时间: |
|
| 查看次数: |
2061 次 |
| 最近记录: |