NativeScript StackLayout允许子元素使用剩余宽度

NativeScript StackLayout允许子元素使用剩余宽度,nativescript,Nativescript,在NativeScript StackLayout中,我有三个元素A、B和C。我希望中间的元素B占据所有可用空间。这就是我想要的: |bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb| 我正在尝试这个简化的代码。A和C是固定宽度的标签,B是进度条 <

在NativeScript StackLayout中,我有三个元素A、B和C。我希望中间的元素B占据所有可用空间。这就是我想要的:

|bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb|

我正在尝试这个简化的代码。A和C是固定宽度的标签,B是进度条

<StackLayout orientation="horizontal" verticalAlignment="center">
    <Label text="1" width="50"></Label>
    <Progress value="50" maxValue="100"></Progress>
    <Label text="1" width="50"></Label>
</StackLayout>

发生的情况是,进度条填满了StackLayout的剩余空间,没有为最后一个标签留下任何空间。屏幕上仅绘制第一个标签和进度条本身,如下所示:

|abbbbbb | C

因此,C元素被绘制在屏幕之外

如果我将两个标签放在前面,大小看起来就可以了


我做错了什么?

使用
GridLayout

<GridLayout columns="50, *, 50">
    <Label text="1" col="0"></Label>
    <Progress value="50" maxValue="100" col="1"></Progress>
    <Label text="1" col="2"></Label>
</GridLayout>

使用
网格布局

<GridLayout columns="50, *, 50">
    <Label text="1" col="0"></Label>
    <Progress value="50" maxValue="100" col="1"></Progress>
    <Label text="1" col="2"></Label>
</GridLayout>