web-dev-qa-db-ja.com

Interface Builderのサイズインスペクターのフレームとレイアウトの違いは何ですか?

IBでは、サイズインスペクターに「レイアウト」と「フレーム」を示すドロップダウンがあります。フレームが何であるかは知っていますが、この場合のレイアウトはわかりません。違いはなんですか?

43
Boon

コントロールを並べて相互の距離を測定する場合、コントロールの位置を、単なる生のフレームではなく、画面上で占める視覚空間の観点から考えることが望ましい場合がよくあります。多くの場合、コントロールが占める視覚的な長方形とそのフレームは大きく異なります。たとえば、通常のサイズのプッシュボタンは、画面上で約20ポイントの高さに見え、2ポイントまたは3ポイントのドロップシャドウがあります。実際には、適切に構成されたプッシュボタンのフレームの高さは32ポイントであり、最大23ポイントではありません。この余分な9ポイントのパディングは、視覚的にはわかりません。

「LayoutRectangle」は、InterfaceBuilderがこの概念に使用する名前です。

レイアウト長方形は、測定とサイジングのアプリケーションを調べるのに役立ちます。 Appleヒューマンインターフェイスガイドラインでは、「2つのプッシュボタンを垂直方向に並べ、水平方向に並べて配置すると、水平方向に12ポイントのスペースが必要です」と記載されている場合があります。ボタンは、生のフレームではなく、ボタンのレイアウトフレームから測定する必要があります。

31
Jon Hess

多くの組み込みIB要素には、個別の「レイアウト」と「境界」の長方形があります。 「レイアウト> XXXの長方形を表示」を使用してそれらを表示すると、違いを確認できます。ドロップダウンは、座標が参照する長方形を示します。

Macでは、これは、たとえばラベルであるUITextFieldsに影響を与えます。レイアウトとフレームを切り替えると、X座標が3ピクセル変化します。私はiPhoneのコントロールをいじって、それらのいずれかに影響を与えるかどうかを確認していません。あまり出てきません。

7
Rob Napier