2017-11-11 14 views
2

複数のビューコントローラ(コンテナビューなど)を持つ画面があるとします。実際に制約を完全に異なるビューコントローラにリンクできますか?

(あなたが好きなら、多くの大規模、複雑な領域でのiPadアプリの感想などをリスト、コントロール、のために独自のサブコンテナビューの各)

でも - それはあなたがVCを持っている可能性があり隠されていて、スクリーンからスライディングされていて、たぶんキャッシュに入っていて、提示されていないか、またはいくつかが目に見えないように複数のスクリーンを互いに重ねて表示しているかもしれません。

だから、あなたがビューV、これらのビューコントローラの一つで

 var v: UIView 

、および全く異なるビューコントローラで

 var w: UIView 

ワットビューを持っていると言います。

何らかの理由で、と同じ幅のが画面に表示されるようにします。

実際は。もう一度NSLayoutConstraintを使うことができますか?

(もちろん、あなたはストーリーボードにすることはできません;それは大したことないあなたは、レイアウト時にコードでそれを行うだろう。)

があることは可能ですか?

VCのいずれかが消えてしまうと問題が起きますか?

(実際には制約はハード参照を引き起こす?)

この上の取り引きは何ですか?

+0

コントローラビューは他のビューと同じように表示されます。それらの間に制約を作成することに問題はありません。 – Sulthan

答えて

3

はい、ビューはすべて同じビュー階層の一部である限り、機能します。それらがchildViewControllerであることは重要ではなく、すべて正常なサブビューと同じように機能します。

同じビューに既に追加されているビューにのみ制約を追加できます。まだ追加されていないビューに制約を追加しようとすると例外が発生します。

ビューのいずれかを削除すると、関連する制約も削除されます。

関連する問題