togo= zumuya の人による机の上系情報サイト

Auto Layout で幅に応じて Label(NSTextField)を折り返す

macOS 開発

AppKit で Label といえば、NSLabel ...ではなく NSTextField を使う。それを Auto Layout 1で扱うのが今日のテーマだ。

単純に配置するだけなら何も考えなくていいけど、必要な幅が長くなったら下の GIF アニメーションのように折り返したい。

横に縮むと縦に伸びる

こうやって上下左右に Constraint を追加しただけの単純なウインドウで考えてみよう:

シンプルな Constraint

続きを読む


  1. 個人的には Auto Layout は行単位のリストで完結することが多い iOS よりも環境設定ウインドウをはじめとして UI 部品が縦横方向に積み重なる Mac App でこそ活きる気がしている。言語ごとの変化まで考えるとこれがない世界には戻れない。 ↩︎

© 2005-2020 zumuya