2017-10-07 56 views
0

我試圖做兩個標籤,每個都取得父母的寬度的50%(StackLayout) 我試着用Fill,FillAndExpand,StartAndExpand這兩個標籤的但它沒有工作:StackLayout兩列各佔空間的一半

<StackLayout Orientation="Horizontal"> 
    <Label Text="AAAAAAAAAAAAAAAAAAAAAAAAA" HorizontalOptions="FillAndExpand" /> 
    <Label Text="BBBB" HorizontalOptions="FillAndExpand" /> 
</StackLayout> 

回答

1

改爲使用Grid

XAML

<Grid> 
    <Grid.ColumnDefinitions> 
     <ColumnDefinition Width="*"/> 
     <ColumnDefinition Width="*"/> 
    </Grid.ColumnDefinitions> 
    <Label Text="AAAAAAAAAAAAAAAAAAAAAAAAA" Grid.Column="0"/> 
    <Label Text="BBBB" Grid.Column="1"/> 
</Grid> 

兩個*什麼惡意的列將具有相同的寬度。如果您希望第一列的寬度與第二列的寬度相同,您可以將第一列寬度更改爲2*

您也可以使用EndAndExpand將文本右對齊

+0

謝謝。我正在研究如何使用StackLayout,我已經知道Grid。但是我將你的回答標記爲一個解決方案,因爲我認爲StackLayout是不可能的。 –

+0

是的,我不認爲單獨使用StackLayout是可能的。如果你需要使用一個,你總是可以把網格放入一個StackLayout – cvanbeek

+0

我不明白爲什麼在兩個標籤上設置FillAndExpand的StackLayout不起作用。由於我使用'擴展',它不應該爲每個標籤分配50%的可用空間嗎? –