Nic*_*ico 6 uitableview ios autolayout swift
我有一个使用自动布局UITableViewCell放入contentView标签和其他东西的地方.我添加了约束,其中之一是它contentView具有相同的界限UITableViewCell.
(storyboard为方便起见,我选择了iphone 4-inch它的大小simulated metrics.)
添加约束后,我调用,layoutIfNeeded因为我需要获取单元格的大小.确实已经列出了约束,因为我可以看到我contentView现在的尺寸相同UITableViewCell.问题是,它的大小UITableViewCell还没有适应屏幕的大小(我想它会在我的细胞很好的时候自动完成).所以当我使用4.7英寸的iphone时,我仍然只有4英寸的iPhone尺寸.
有没有办法触发我的细胞的最终大小,就像有一种方法强制布局使用layoutIfNeed?
从故事板或笔尖加载单元格时,它在笔尖中具有指定的大小而不是最终的大小.在cellForRowAtIndexPath添加视图和约束时contentView,然后调整宽度cell.width = tableView.width.最后,打电话给layoutIfNeeded你以前做过.
这将导致具有正确的单元格宽度的完整布局.
编辑:这是有效的,因为即使您使用autolayout enabled(translatesAutoresizingMasksIntoConstraints = NO)加载nib ,每个nib文件的第一个视图始终自动布局禁用(translatesAutoresizingMasksIntoConstraints = YES).
这意味着在渲染视图时(这样做layoutIfNeeded),autolayout将考虑实际的frame和mask属性来确定正确的大小.
| 归档时间: |
|
| 查看次数: |
6948 次 |
| 最近记录: |