【问题标题】:How to make my label one-third of my UITableViewCell through auto-layout如何通过自动布局使我的标签占 UITableViewCell 的三分之一
【发布时间】:2015-07-30 03:56:33
【问题描述】:

我的视图控制器和 TableView 中有一个 TableView,我有一个自定义 UTableView 单元。我想要一个三分之一的标签或我的自定义表格视图单元格,但是当我通过右键单击我的标签拖动到内容视图(我的单元格)来选择纵横比时,我没有得到纵横比选项。谁能帮我弄清楚如何使我的标签成为我的表格视图单元格的三分之一。

我将尾随空间和顶部空间的约束设置为容器。

现在,当我去寻找纵横比时,我没有得到任何东西。

【问题讨论】:

  • 尝试将其嵌入到填充整个内容视图的视图中。然后将纵横比设置为 UILabel 的父视图。
  • 我不认为纵横比是你想要的。您应该为您的标签设置一个约束,使其与内容视图具有相等的宽度,乘数为 1/3
  • 在这种情况下,我放置了另一个与 contentview 大小相同的视图并设置约束。从现在开始它对我有用。我希望它有所帮助。
  • 是的。我放置了一个具有单元格高度和宽度的容器视图,并且我使用相等的宽度使其成为我视图的 1/3。非常感谢!

标签: ios objective-c uitableview autolayout aspect-ratio


【解决方案1】:

纵横比可能不是最好的。您应该从 UILabel 拖动到您的内容视图并选择 等宽 约束。然后,打开它的属性并将 multiplier 更改为 .33。

【讨论】:

  • 我也试过了。当我从 Uilabel 拖动到 Tableviewcell 的内容视图时,我找不到任何“等宽”约束。
  • 那么,你有多少个标签?你的问题说你想要它 1/3,但在 IB 中你只有两个标签。
  • @natasha 您不会通过拖动来进行限制。您需要按住命令键,选择您的标签,然后选择视图,以便同时选择两者。然后,在图钉菜单中,选择“等宽”。
  • 将 .33 乘数添加到该约束时是否有效?
  • 我必须在单元格内添加一个视图以具有相等的宽度或纵横比约束。然后它起作用了。
【解决方案2】:

只是添加到@dreaming-in-binary 的答案中,IB 可能不允许您针对内容视图设置等宽约束(即使可以通过编程方式)。相反,您可以添加一个隐藏的参考视图,它跨越单元格的整个宽度(即,对内容视图具有前导和尾随约束,常量为 0,以及任何垂直约束)。然后,您可以针对参考视图设置等宽约束(实际上是比例宽度约束)。

【讨论】:

  • 或者,将标签限制为文本字段大小的一半,并确保它们彼此之间以及到其父视图的近边缘具有水平空间限制。
猜你喜欢
  • 2015-09-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多