2017-01-22 10 views
0

ストーリーボードに4つのラベルがあり、ベースライン時とそれらの間の固定された間隔で整列しています。 各ラベルは実行時に異なる値を持つことができます。これらの4つのラベルのグループは水平に中央揃えされています。ストーリーボードのラベルの制約

修正に失敗しました。 私はそれらをビューに入れてビューを中央に置こうとしましたが、どちらも機能しません。 優先順位をつけて試してみましたが、どちらでも成功しませんでした。

これをストーリーボードで達成することは可能でしょうか?

+0

はスタック図です。 –

+0

私はJustinに同意します。これは、スタックビューなしでやるのはかなりの苦痛で、**スタックビューで**するのは簡単です。 –

+0

この解決策は、各ラベル間の距離が固定されていても機能していますが、それらが異なる場合、スタックビューでは許可されません。 – Eric

答えて

1

4つのラベルを別のビューの内側に置くことで、これを行うことができます。次の制約を追加します。

  1. ラベル間に固定距離の制約を設定します(3つの制約)。
  2. ラベルのベースラインを合わせるための制約を設定します(3つの制約)。
  3. 左端のラベルから先頭の制約を包含するビューに設定します。定数を0に設定します。
  4. 右端のラベルから後続の制約を含むビューに制約を設定します。定数を0に設定します。
  5. ビューの高さの拘束を設定します。
  6. 左のラベルの上端から、それを含むビューの上端までの拘束を設定します。
  7. ビューを水平に中央に配置するように制約を設定します。
  8. ビューを垂直に配置するように制約を設定します。

ビューの幅は、ラベルの本来のサイズと#1の距離のサイズとによって決まります。この幅はラベルの内容が変わると変わり、ビューはグループを中央に維持します。あなたはおそらく探しているもの


Showing constraints in Storyboard

+0

@エリック、これを試しましたか?それがうまくいかなかったことはありますか?私はあなたがラベルの幅を動的にしたいと仮定しました。ラベルを修正する場合は、各ラベルに幅の制約を追加します。 – vacawama

+0

こんにちはVacaWama、あなたの答えのおかげで、これはまさに私が探していたものです。スタックビューよりも多くの制約がありますが、ラベルとベースラインのアライメントの距離を必要なだけ正確にカスタマイズできます。再度、感謝します :) – Eric

0

あなたはこのためにスタックビューを使用することができます:あなたは、各テキストフィールドが等しい幅とそれらの間の5点の間隔を持っていることを例に設定できる '属性インスペクタ]で

enter image description here

を:

enter image description here

はその後、通常のだろう、あなたのように水平にセンタリングするために、あなたのスタックビューを使用することができます。

+0

こんにちは、このチップのおかげで。試してみましたが、私の例では、ラベル間に同じスペースがありません。また、スタックビューでは同じでなければなりません。 – Eric

+0

均等に塗りつぶしを設定しましたか? – Emptyless

+0

はい、私が見る限り、スタックビューの場合、ラベル間に横方向の拘束を置くことはできません。 – Eric