AutoLayout になかなか慣れません。 そうは言っても使わなければ、身につかない。 というか久しぶにりiOSのコード書いてるだけな気がする

今回挑戦したのはふたつのViewの間に固定幅をスペースをつくりたい。 具体的には以下の感じ。

autolayout

書いた VisualFormatLanguage はこんな感じ。

|-[_leftView]-40-[_rightView]-|
[_leftView(==_rightView)]

V:|-[_leftView]-|
V:|-[_rightView]-|

以下のように書いてもよい。

|-[_leftView(==_rightView)]-40-[_rightView]-|

V:|-[_leftView]-|
V:|-[_rightView]-|

やってみると簡単。

プログラムで気軽にレイアウトできる。

具体的なソースコードは Github に アップしています。

主な処理はこの辺にあります。

簡単に解説

頭に V: がついているのは 縦方向に対する設定です。

|- の部分は OS 標準の幅になります。ぴったりつけたいなら、|-0- とします。

縦方向の左側 だけやってみます。

V:|-0-[_leftView]-0-|

まとめ

なれるまで発想のセンスがいる気がします。

論理的な手順で、作りたいレイアウトをするのはまだまだまだ説明できそうにないです。