使用<stacklayout>或<grid>有什么好处吗?

时间:2017-08-14 13:12:56

标签: xamarin xamarin.forms

我的代码如下:

<ListView.Header>
   <StackLayout VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand">
      <StackLayout Padding="10,35,10,10" Orientation="Horizontal" HorizontalOptions="FillAndExpand">
         <local:ExtLabel ExtStyleId="Body" Text="Custom body Label"></local:ExtLabel>
         <local:ExtLabel ExtStyleId="Header" Text="Custom hdr Label"></local:ExtLabel>
      </StackLayout>
   </StackLayout>
</ListView.Header>

是否可以使用<Grid>实现此功能,<Grid>提供的灵活性是否比<StackLayout>更灵活?

1 个答案:

答案 0 :(得分:3)

我想你可能想看看this优秀博客文章。来源是Xamarin的员工,更是如此,他是Forms的创始人之一。

参考布局的一些子弹:

  
      
  • 请勿使用StackLayout来托管一个孩子。

  •   
  • Grid足够时,不要使用StackLayout

  •   当<{1}}足够时,
  • 不要使用多个StackLayout

  •   
  • DO 使用Grid来实现分层。

  •   

关于外观,你可以达到同样的效果。关于性能,请查看完整的博客文章(和这些规则),以确定哪个是更好的选择。