2016-12-18 7 views
0

Xcodeでは、任意のタイプのオブジェクトに自動サイズ変更オプションを使用すると、シーンに比例したサイズを維持しながら、想定されていた場所に留まるように見えます。私は一般に、自動サイズ変更ボックスの内側の矢印を選択するだけで、すべてが適切なサイズと比率を維持します。しかし、チュートリアル、ブログ、ビデオでは、制約を使用することが「正しい方法」であることを何度も見てきました。自動サイズ調整が完全に機能するように見える場合、制約の使用が自動サイズ調整よりも優れているのはなぜですか?ポートレートモードでiPhoneでのみ動作する場合、自動サイズ変更を使用すると問題が発生しますか?Xcodeで自動サイズ設定よりも制約が優先されるのはなぜですか?

enter image description here

+0

自動サイズ変更は古い方法であり、私が覚えている限り長く続きました。 Autolayoutは「新しい」方法であり、iOSとmacOSの両方をサポートするように設計されています。より柔軟で強力です。 –

答えて

0

さて、私が思う理由は2つあります。最初はおそらく最も正確ですが、後で気分が変わってしまうかもしれません。 Appleがそれを推進しているからだ。通常、アップルがAPIの新しいツールをサポートしているときは、自動化が好きなことに慣れている古いものをサポートしなくなるので、従うことをお勧めします。私が知っているものは駄目です。

Autolayoutは、さまざまな画面サイズの間で再利用できるビューコンポーネントを書くことができる2番目の(より良い)理由です。 Yea Autoresizingが役立ちますが、Autolayoutは、画面サイズがiPhoneからiPadのような大きな変化を起こしたときに、より多くの制御を提供します。私はすべての私のiPhone/ipad/apple tv appsに住むビューを書いた。

0

重要な理由は、タイトルやラベルの付いたテキストなどのテキストを表示するビューをテキストのコンテンツやフォントに合わせることができるようにすることです。

国際化/ローカリゼーションのためにテキストコンテンツが変更されるはずです。

Appleがシステムフォントを変更した場合、またはユーザーが読みやすいように大きなテキストを要求した場合、フォントが変更される可能性があります。

自動レイアウトを適切に適用すると、レイアウトはそのような変更に適応することができ、依然として良好に見えます。自動レイアウトがない場合は、そのような変更に合わせてレイアウトを手動で変更する必要があります。

関連する問題