NSLayoutConstraint の優先順位は、iOS と OS X に最初に満たすべき制約を伝えます。
viewOne
最初に展開したいビューがある場合は、ビジュアル フォーマットで制約を適用します@"H:[viewOne(==9999@499)]"
。10≤viewOne≤20
これにより、必要な制約&が満たされた後、幅 9,999 ピクセル40≤viewTwo≤60
を作成しようとする必要があることを iOS に伝えます 。viewOne
viewTwo
マジックナンバー9999を保存したくない場合は、
NSNumber* maxWidthForViewOne = @(20) ;
NSLayoutConstraint* constraint = [NSLayoutConstraint constraintsWithVisualFormat:@"H:[viewOne(==asBigAsPossible@499)]" options:0 metrics:@{@"asBigAsPossible":maxWidthForViewOne} views:views] [0] ;
これらを OS X でテストしたところ、499 (NSLayoutPriorityWindowSizeStayPut - 1) が最高の優先度でviewOne
あり、ウィンドウのサイズを変更して縮小できることがわかりました。iOS を使用しているので、どの優先順位が好きなように動作するかをテストする必要があります。