2015-10-07 8 views
5

私は様々なフィールドを持つ基本フォームを作成しています。私はすべてのコントロールのレイアウトにUIStackViewを使用したいと思います。コントロールが正しく配置されるように、私は次のようにしますか?これを行う正しい方法はUIStackViewですか?UIStackViewフォームレイアウト

enter image description here

答えて

5

あなたは間違いなく、これを達成するためにStackViewsを使用することができます。

どのようにスタックビューを配置するかは、アライメントの管理方法によって異なります。ここで

は、私がお勧めするものです:

  1. 別の垂直方向に整列stackview
  2. にテキストフィールドが水平に整列stackview
  3. で2 stackviewsを入れて入れて1垂直方向に整列stackviewと
  4. にラベルを置きます

distributionを2つの小さいスタックビューに均等に設定してから、spacingをbに設定することをお勧めします小さなスタックビューごとに同じです。 最後に、水平スタックビューの間隔を設定して、テキストとテキストフィールドの間隔を設定することができます。(最後の部分は私がこのように設定した理由です)

+0

私の質問の要件を完全に満たすと思います。レイアウトがもう少し複雑な場合はどうなりますか? 2つの行を分ける視覚的な線があるとします。それでは? –

+0

次に、テキストとテキストフィールドを含む2つの水平スタックビューと、すべての要素(stackview、seperator、stackview)を含む1つの垂直スタックビューを作成します。同じ効果を達成することはできますが、ちょっとエレガントではありません。また、それがあなたの質問を満たしていれば、その答えを受け入れることはできますか?乾杯! –

+0

完了。そのように分割すると、テキストフィールドが正しく並ぶように左のスペースをどのように制御するのですか? –

6

Apple suggests各ラベルとフィールドで水平スタックビューを作成してから、それらを垂直スタックビューに入れます。

後でコントロールの1つを別のコントロール(ポップアップボタンなど)に変更すると、ラベルとコントロールベースラインを整列したままにすることができます。

関連する問題