在来自Interface Builder或代码的自定义XIB的顶级UIView上设置AutoLayout宽度约束?

时间:2018-12-16 23:57:20

标签: ios autolayout storyboard interface-builder

如何在自定义XIB的顶级视图上设置宽度约束?

在下图中是Content View

单击Add New Constraints按钮不能指定宽度。该选项被禁用(以及其他选项)。

这可以从Interface Builder进行吗?如果没有,这是否可以通过代码实现?如果没有,那可能可以解释一些布局问题...

enter image description here

2 个答案:

答案 0 :(得分:0)

在从自定义XIB加载的顶级视图上,自动布局将.translatesAutoresizingMaskIntoConstraints设置为 true

在加载和使用该视图时,您希望通过代码将.translatesAutoresizingMaskIntoConstraints设置为 false

答案 1 :(得分:0)

  

这可以从Interface Builder进行吗?

不。如果您有固定的尺寸来提供视图,则将其“尺寸”指标设置为“自由格式”,然后直接为其指定尺寸。

  

否则,是否可以通过代码实现?

是的,当然。您必须在某处具有一些代码,这些代码可加载笔尖,获取视图并将视图放入接口中。到那时,由您决定大小和位置,当然可以使用自动布局来这样做,尽管没有法律要求您这样做。您可以给它一个框架,然后将其留在上面,或者如果来自笔尖的尺寸正确,则可以不理会它,而只需将视图以其框架原点或中心定位即可。