你真的可以将约束链接到完全不同的视图控制器吗?

想象一下,你有一个屏幕有一个视图控制器(与容器视图,或其他)。

(如果你喜欢的话,可以考虑一个iPad应用程序,它有很多大的,复杂的区域,每个区域都有自己的子容器视图,用于列表,控件等等)

即使 – 也许你有隐藏的风险投资,在屏幕上滑动,甚至可能只是在caching中,并没有呈现,或者你可能有一些“堆叠在一起”的屏幕,所以有些甚至不可见。

所以说你有一个观点v

var v: UIView 

在这些视图控制器中的一个中,以及视图w

  var w: UIView 

在一个完全不同的视图控制器。

出于某种原因,您希望两个项目在屏幕上具有相同的宽度

事实上。 你可以NSLayoutConstraint之一?

(显然你不能在故事板上,这没什么大不了的,你可以在布局的时候用代码来做)。

那可能吗?

当其中一个风险投资者消失时,会引起问题吗?

(事实上​​,约束会导致一个很难的参考?)

这有什么关系?

是的,只要你的观点都是同一视图层次结构的一部分,就可以工作。 他们是childViewControllers无关紧要,一切都像正常的子视图一样。

只能向已添加到相同视图的视图添加约束,如果您尝试向尚未添加的视图添加约束,则会发生exception。

如果您删除了任何视图,则其关联的约束也将被删除。