创建没有任何约束自动布局的 uitextfield 或任何 uilabel

Posted

技术标签:

【中文标题】创建没有任何约束自动布局的 uitextfield 或任何 uilabel【英文标题】:create a uitextfield or any uilabel without any constraint auto layout 【发布时间】:2013-01-31 14:39:01 【问题描述】:

我正在研究自动布局。但是,有一个小问题我无法弄清楚。谷歌它但找不到线索。

正如我们所见,教程首先创建了 uitextfield1,完全没有任何约束。但是,当我尝试将另一个 uitextfield2 拖放到视图时,存在与之相关的约束 我的问题是如何创建一个没有约束(宽度+高度)的uitextfield

已编辑(有关我想要实现的更多详细信息)

对于上图,我们可以看到 textfield2 有 203 的宽度约束。然而,textfield1 没有像下图这样的宽度约束

【问题讨论】:

如果您不想自动布局,请取消选中界面构建器中的自动布局选项.. 请看下面我的评论.. 【参考方案1】:

视图中的所有组件都有自己的约束,但 Xcode 只显示所选组件的约束。如果您不想在视图或 Storyboard 中使用 Autolayout 约束,请在 Xcode 中禁用它

【讨论】:

如果你看上面的图片,教程仍然使用示例视图控制器的自动布局,但它的 uitextfield1 没有自己的宽度,高度约束。 好的,我明白了,那是因为文本字段的约束在视图约束内,它的位置和大小是相对于视图中的其他组件设置的 例如,如果在一个空视图中添加一个位于视图中心的UITextField 并将其设置为使用父视图的完整大小(从蓝线到蓝线),您将看到它的约束“消失” 我刚刚为 OP 添加了更多信息,请看一下。我刚刚尝试过,但仍然得到像 here 这样的宽度约束 textfield1 的宽度由位置约束(左侧标签到右侧视图边框的距离)定义,这就是为什么这个组件没有宽度限制

以上是关于创建没有任何约束自动布局的 uitextfield 或任何 uilabel的主要内容,如果未能解决你的问题,请参考以下文章

OSX:自动布局/约束不显示内容

自动布局视图 xib - 没有可编辑的约束?我需要居中的元素

Xcode 6 自动布局灵活宽度

iOS - 以编程方式在具有自动布局的 UITextField 内定位 UIImageView

以编程方式向UITextField添加约束

我的带有自动布局约束的 Swift 4 UIScrollView 没有滚动