1 年前、自動レイアウトの利点に関する Apple WWDC 基調講演をいくつか見たことがありますが、実際のプロジェクトでそれらを試してみたところ、ストーリーボード上の UI 要素を少しでも動かすと、制約の半分が壊れてしまうことがわかりました。自動レイアウトのすべての利点を無効にします。
これまで、私は Springs & Struts をうまく利用してきました。KVO と組み合わせて、ビューのフレームパスを観察し、回転の再調整のほとんどを、ほんの数行のコードで適切に処理しました。
iOS 7 が登場した今、私は質問を得ました: iOS 7 アプリにのみ Springs & Struts をうまく利用し続け、Auto Layout の使用を避けることはできますか? それとも、そうすることで何かを失っていますか? さまざまなシナリオで自動レイアウトを使用するスキルを学び、習得するには、おそらく数日かかるので、議論のあるアドバイスをいただければ幸いです。
解決済み: Max の回答のおかげで、自動レイアウトについて掘り下げ始めました。彼の答えは正しいですがNull
、実際にはiOS 7でSpringsとStrutsを問題なく使用できます.Auto-Layoutは強力です.
どうやらXcode 5では、次のことが修正されています。
制約を削除するために、実際には古代のシャーマニックダンス オブ レインを実行する必要はありません。これを削除すると、レイアウトが警告モードになり、自動レイアウトを機能させるために解決する必要がある問題が示されます。
物を動かしても、制約は変わりません。Interface Builder のビュー フレームのみが変更されます。
Interface Builder のフレームが、レイアウト制約フレームで計算されたフレームと実際に異なる場合、Interface Builder はその要素の実行時フレームを赤い点線で示します。最後に、それは正しく行われます。ありがとう、アップル。
これは、Xcode 5 でそのすべてを利用する方法を示す WWDC 2013 セッションへのリンクです。それを表示するには、Apple 開発者アカウントが必要です。
したがって、私の選択は自動レイアウトです。皆さん、ありがとうございます。