画面をパーセンテージで分割する方法はありますか(等しくないパーセンテージ)、画面を1/3と2/3の2つの部分に分割する必要があります。等しい部分に分割する方法は知っていますが、等しくない部分に分割する方法はわかりません。
ありがとう
ビューとスーパービューの間に1つのビューに乗数2:3を、もう1つのビューに1:3を使用して、「等しい幅」制約を作成します。写真をご覧ください。他の方向に分割する場合は、「等しい高さ」。
手順:
UIView objects
on viewcontroller
。superview
の左、上、および下に固定しますsuperview
の右、上、下の右ビュー。結果を見る:
ストーリーボードと自動レイアウトを使用すると、非常に簡単です。画面を垂直に分割する必要があると思います(ただし、水平方向も同じトリックです)。
したがって、単一のView Controllerを使用して、2つのビューをドラッグ&ドロップし、それらを上下にアタッチして設定します。 view 1の場合:
ビュー2:
ここで、制約を設定する必要があります等しい高さメインビューのビュー1とビュー2の同じ。その後、これらの制約設定を乗数として値(0と1の間)で編集できます。 。制約をダブルクリックします。
比率に必要な値を設定します(これらの制約の合計を1として維持するか、ここに「2:3」と他のビューに「1:3」を入れるだけです):
これが結果です:
これがあなたが必要とするものであることを願っています、もっと詳細が必要なら教えてください!
ただし、1つのビューのEqual Widths
を1に制約するなど、2つのサイズではなく1つのポイントを制約する場合は、受け入れられた答えのようにhorizontal center
制約を使用できます。画面上の/ 3または2/3のポイントは、スペース内のポイントをサイズに制限できないため機能しません。
ただし、view1
がxib
で画面の全幅になる場合、たとえばhorizontal center
ポイントを使用すると、それに制限できますビューのtrailing
エッジ、およびビューを画面の幅の1/3または2/3の中央に配置する場合は、乗数をそれぞれ1:3
または2:3
に設定します。