了解Nativescript中的GridLayout行

时间:2018-02-25 16:55:35

标签: nativescript grid-layout

有人可以帮我理解Nativescript中使用的网格布局,特别是GridLayout吗? (星)跟随汽车的意义究竟是什么意思?

 ModelState.Clear(); 

然后我遇到了这个更令人困惑的例子:

<GridLayout rows="*, auto">

我发现Nativescript的文档不太清楚。

1 个答案:

答案 0 :(得分:4)

文档说明如下:

  

表示用逗号分隔的行高的字符串值。行   高度可以是absolute numberauto*。一个号码   表示绝对行高,auto表示行高   最高的孩子,*使行占据所有可用的垂直   空间。

我认为首先要区分auto*很重要,因为它们会做一些不同的事情。当您使用auto作为值时,GridLayout将获取具有最高高度值的子元素的高度,并使其成为行的高度。因此,如果您有一个GridLayout,其中一行包含多个列,一个高度为20,一个为30,另一个为40,则该行的高度为40,该行中的列将与该高度匹配。

如果您使用*代替auto,则GridLayout将使用所有可用空间作为该行的高度。因此,如果GridLayout的高度为100,则行的高度也为100.当您在星号前放置一个数字时,基本上是分开的,所以如果你有rows="2*, *",第一行将具有GridLayout高度的三分之二,第二行将具有高度的三分之一。

我不确定rows属性的概念是否清晰,但为了澄清您是通过添加逗号来定义多行的高度,例如:<GridLayout rows="*, auto, auto, auto, 2*">包含五个高度行。在确定了auto高度的三列高度后,第一行和最后一行将使用剩余空格。

NativeScript文档包含一些图像来展示它的外观,可以找到here

相关问题