Nativescript GridLayout在打字稿中设置行高

bra*_*ice 1 nativescript nativescript-angular

有没有办法在已经绘制之后更改/设置GridLayout行的高度?

例如,我有一个像这样的GridLayout设置:

<GridLayout class="template_body" rows="40,*,60">
<StackLayout row="0" [visibility]="isTablet ? 'visible' : 'collapsed'">
    <Label text="Drag statements to the proper category."></Label>
    <FlexboxLayout flexDirection="row" row="1" [visibility]="isSubmitted ? 'visible' : 'collapsed'">
            <AbsoluteLayout height="10" width="10" class="correct-legend"></AbsoluteLayout><Label class="legend-label" text="Correct"></Label>
            <AbsoluteLayout height="10" width="10" class="incorrect-legend"></AbsoluteLayout><Label class="legend-label" text="Incorrect"></Label>
        </FlexboxLayout>
</StackLayout>
Run Code Online (Sandbox Code Playgroud)

我想根据条件更改第一行的高度。到rows =“ 100,*,60”

我尝试通过在gridlayout上使用getRows()获取行,但是似乎无法对返回的内容执行任何操作。看来它正在返回一个Observable而不是api表示应该返回的行数组。

Tim*_*Tim 5

如果您想要的控制量多于rows =“ auto,*,auto”所提供的,则可以给gridlayout一个ID,例如id =“ someId”,然后尝试在js / ts中使用...

page.getViewById("someId").rows="100, *,60"; 
page.getViewById("someId").requestLayout();
Run Code Online (Sandbox Code Playgroud)