NSSplitView のリサイズにおける優先度
例えばこのようなスプリットビューがあったとき、ウインドウのリサイズに合わせてどちらのペインを伸縮させるかという設定を行うことができます。
Interface Builder には Holding Priorities という設定項目が用意されています。標準値では 250 という値が設定されています。Auto Layout の制約とよく似ていますね。
コードではこのようなメソッドを使用します。
- (void)setHoldingPriority:(NSLayoutPriority)priority forSubviewAtIndex:(NSInteger)subviewIndex
仮にプライオリティの値が同一(Left = Right)の場合、いずれのペインも同じ割合で伸縮するようになります。プライオリティの値を大きくするとそのペインはなるべく大きさを保とうとします。
画像のようなサイドバーを持つ UI では、ウインドウリサイズ時にはサイドバー側はなるべく幅を保ち、右ペインを伸縮するようにしたいものです。そのような場合は Left のプライオリティを Right よりも高くしておけば望んだ動きになります。Right が250なので、+1した251で十分です。
ちなみにペインの最低サイズを決めるには Auto Layout でビューの幅を Greater Than or Equal で設定すれば良いです。
Author And Source
この問題について(NSSplitView のリサイズにおける優先度), 我々は、より多くの情報をここで見つけました https://qiita.com/usagimaru/items/6c66720e56be11aff606著者帰属:元の著者の情報は、元のURLに含まれています。著作権は原作者に属する。
Content is automatically searched and collected through network algorithms . If there is a violation . Please contact us . We will adjust (correct author information ,or delete content ) as soon as possible .