2016-06-17 9 views
2

StacklayoutにStackOrientation.Horizo​​ntalを設定し、5つのラベルを設定すると正しく表示されます。XamarinフォームStacklayout StackOrientation.Horizo​​ntal

enter image description here

しかし、ラベルの数がカウント増加し、ラベルテキストのサイズを縮小し、すべてのラベルは、利用可能な幅のために整列されています。すべてのラベルのための完全なテキストを表示する方法

enter image description here

ラベルを超える数える場合も、次の行にラベルを移動しますか?

答えて

1

StackLayoutHorizontalorientationは「1行」のみを使用します。

この場合は、GridLayoutまたはWrapLayoutXlabs)を使用する必要があります。

代替では、Horizontal orientationStackLayoutを使用することができ、各ChildVertical orientationStackLayoutです。

+0

が垂直配向を有するStackLayoutです"。 @mishoによって最初に提案されたWrapLayoutは正確な解決です。ありがとうございます。 –

+0

なぜ(「水平方向のStackLayoutと各Childは垂直方向のStackLayoutです」)、あなたの意見ではうまくいかないでしょうか? – jzeferino

+0

水平方向のStackLayoutでは、ラベルを次の行に移動できません。私たちはこれのためにWrapLayoutに行く必要があります –

2

使用WrapLayout代わり:

var layout = new WrapLayout { 
        Orientation = StackOrientation.Horizontal, 
        HorizontalOptions = LayoutOptions.Fill, 
        Padding = new Thickness (0, padding, 0, padding) 
       }; 
    layout.Children.Add (item); 

結果: 下の行は水平方向とそれぞれの子をあなたでしStackLayout代替案では、」このような場合には動作しませんenter image description here

関連する問題