将 UILabel 拉伸到 UICollectionViewCell 的全宽
Posted
技术标签:
【中文标题】将 UILabel 拉伸到 UICollectionViewCell 的全宽【英文标题】:Stretch UILabel to full width of UICollectionViewCell 【发布时间】:2015-05-22 20:43:56 【问题描述】:这听起来像是一件微不足道的事情,但由于某种原因,我无法弄清楚如何使用 AutoLayout 来完成这项工作。
我在 Interface Builder 中有一个带有两个子视图的 UICollectionViewCell
UICollectionViewCell
- UILabel
- UILabel
UICollectionViewCell 具有动态宽度高度,因此我想使用 AutoLayout 将第一个 UILabel 的框架设置为类似这样。
CGRectMake(5, 5, collectionViewCell width, collectionViewCell height-10);
但是,如果我选择 UICollectionViewCell 和 UILabel,然后单击最左侧的图标以“添加新的对齐约束”,则没有可用的选项(例如后缘)。
【问题讨论】:
【参考方案1】:这些菜单项未启用,因为您选择的两个项目没有共同的超级视图。
选择UILabel
,而不选择UICollectionViewCell
。
Auto Layout 已经知道单元格是标签的父视图,并且知道将标签的边缘固定到单元格。
更新:
“固定”工具用于确定大小或项目之间的间距。在你的 在这种情况下,您想设置标签和单元格之间的空间。
“对齐”工具用于使项目居中,或按 一个边缘。例如,如果您的单元格中有两个标签,您可以 确保一个标签与另一个标签的基线对齐。
【讨论】:
即使我只选择一个标签,“添加新的对齐约束”都不可用。 您需要使用“固定”(中间)图标将标签固定到单元格的contentView
。 (对齐图标会将标签与同级控件对齐。)以上是关于将 UILabel 拉伸到 UICollectionViewCell 的全宽的主要内容,如果未能解决你的问题,请参考以下文章