私はビューの制約をループしようとしています。NSLayoutConstraints関連ビューを取得
私はview1に追加しました:先頭、末尾、先頭と高さの制約。
先頭、後続および先頭は、主にViewControllersビューです。
私がview1の制約をループする場合、私は高さの制約しか見ません。
for constraint in view1.constraints {
print(constraint)
}
NSLayoutConstraint:0x6180000968a0のUIView:(アクティブ)0x7fae6b409dd0.height == 146は
ので、私はそのsuperviews制約ループスルー(ViewControllersメインビュー)と私は、制約の多くにのいくつかを持ってそれらはview1に関連付けられています。
for constraint in view1.superview?.constraints {
print(constraint)
}
NSLayoutConstraint:0x618000096670 H:| - (0) - [UIViewの:0x7fae6b409dd0](アクティブ、名称: '|':のUIView:0x7fae6b40a180)
NSLayoutConstraint:0x6180000974d0 H:[UIViewの: 0x7fae6b409dd0] - (0) - | (アクティブ、名称: '|':のUIView:0x7fae6b40a180)
NSLayoutConstraint:0x618000097520 V:| - (0) - [UIViewの:0x7fae6b409dd0](アクティブ、名称: '|':のUIView:0x7fae6b40a180)
と私はもう気にしないでいくつかを得る。
私の問題は、私はすべてのview1のsuperviewsの制約をループし、それに関連付けられているものだけを取得したいということです。
この例では、UIView:0x7fae6b409dd0
はview1です。
しかし、私はそのプロパティを取得する方法を理解できません。
おかげ
私はconstraint.firstAnchor
をプリントアウトする場合、私はいくつかのより多くの情報を得るが、まだ関連するビューを取得傾けます。
NSLayoutXAxisAnchor:0x608000265480 "のUIView:0x7fae6b409dd0.leading">
NSLayoutXAxisAnchor:0x608000265480:> "のUIView 0x7fae6b409dd0.trailing"
NSLayoutXAxisAnchor:0x608000265480 "のUIView:0x7fae6b409dd0.top">
フィルタ:
次に、あなたはそれが同じオブジェクトである場合に比較すること
===
演算子を使用することができます。 –@NareshReddyMどのようにしてビューを取得できますか?最初の/ 2番目の項目はAnyObjectです。 – ilan
このスレッドの最初の回答を確認してくださいhttp://stackoverflow.com/questions/25045796/enumerating-a-views-nslayoutconstraints-in-swift –