【问题标题】:Unable to use autolayout constraints in a tableview无法在表格视图中使用自动布局约束
【发布时间】:2014-02-06 13:36:00
【问题描述】:

我有这个表格视图,但无法添加任何自动布局约束。控件拖动不起作用 - 没有显示约束,并且构建器表单似乎处于非活动状态,我无法在其中设置任何值(见下文)。自动布局在整个项目中随处启用,基本上在每个视图上。这是为什么呢?

【问题讨论】:

  • 您确定选择了 TableView 吗?不是细胞还是别的什么?不幸的是屏幕没有显示整个屏幕来确认
  • 不,tableview上部的textfield被选中了。我想添加相对于 tableview 的约束。

标签: ios xcode uitableview autolayout


【解决方案1】:

这是因为您选择了单元格或单元格中的内容视图。您只能将约束添加到内容视图中的视图。

更新

此外,如果此视图是顶级对象(不是父视图的子视图),您可能无法向视图添加约束。

更新 2

您只能将自动布局约束添加到 UIView 及其子类。在您的情况下,您尝试向位于 UINavigationItem 内的 UITextField 添加约束(它不是 UIView 的子类)。

在这里你可以找到类似的问题和答案:iOS Autolayout and UIToolbar/UIBarButtonItems

【讨论】:

  • 我选择了屏幕上方的文本字段。我想给它加个约束,这样当屏幕旋转到水平位置时,基本上就更长了。
  • @ZviBar 能否附上复制此问题的简单故事板或 xib 文件?
  • 我在这里(sendspace.com/file/cnnw5e)的一个小项目中重新创建了场景。文本字段位于导航项内。
  • @ZviBar 见上面的答案。
  • 感谢您花时间帮助我。我很感激,虽然我无法从类似问题的线程中获得我不想要的结果。
【解决方案2】:

确保单元格样式为“自定义”并且应启用添加新约束。

我有一个样式为“基本”的单元格,我可以自定义标签并添加 UITableViewCell 子类。我不小心将我的插座链接到默认 BASIC 样式单元格中的 UILabel。

【讨论】:

    【解决方案3】:

    选择 TableView - 转到“Size Inspector”并将 Layout 更改为 Automatic

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-08-09
      相关资源
      最近更新 更多