美文网首页
了解 Xamarin.Forms 创建移动应用程序的基础知识 1

了解 Xamarin.Forms 创建移动应用程序的基础知识 1

作者: 鼠标与键盘的故事 | 来源:发表于2020-03-09 13:22 被阅读0次

简介

演示如何在 StackLayout 中对齐控件。

  1. 在 XAML 中创建 Xamarin.Forms StackLayout。
  2. 指定 StackLayout 的方向。
  3. 控制 StackLayout 内子视图的对齐和扩展。

创建 stacklayout

  1. 打开已有项目 AwesomeApp。
  2. 添加新项 StackLayoutPage.xaml:
  3. 编辑 StackLayoutPage.xaml:
<StackLayout>
    <Label Text="第一个Label。" />
    <Label Text="第二个Label。" />
    <Label Text="第三个Label。" />
</StackLayout>

StackLayout 默认为垂直方向。 此外,Margin 属性表示 ContentPage 中 StackLayout 的外边距。
*除 Margin 外,StackLayout 还可设置 Padding 和 Spacing。 Padding 指定 StackLayout 的内边距,Spacing 指定 StackLayout 中每个子元素之间的间隔大小。

  1. 编辑 App.xaml.cs:
public App()
{
    InitializeComponent();
    MainPage = new StackLayoutPage();
}
  1. 调试 Android 上的应用:

StackLayout 方向

  1. 编辑 StackLayoutPage.xaml:
<StackLayout Margin="20,32" Orientation="Horizontal">
    <Label Text="第一个Label的显示内容。" />
    <Label Text="第二个Label的显示内容。" />
    <Label Text="第三个Label的显示内容。" />
</StackLayout>

Orientation属性:Horizontal 横向,Vertical 纵向

  1. 调试 Android 上的应用:

对齐方式和扩展选项

  1. 编辑 StackLayoutPage.xaml:
<StackLayout Margin="20,35">
    <Label Text="Start"
           HorizontalOptions="Start"
           BackgroundColor="LightGray" />
    <Label Text="Center"
           HorizontalOptions="Center"
           BackgroundColor="LightGray" />
    <Label Text="End"
           HorizontalOptions="End"
           BackgroundColor="LightGray" />
    <Label Text="Fill"
           HorizontalOptions="Fill"
           BackgroundColor="LightGray" />
    <Label Text="StartAndExpand"
           VerticalOptions="StartAndExpand"
           BackgroundColor="LightGray" />
    <Label Text="CenterAndExpand"
           VerticalOptions="CenterAndExpand"
           BackgroundColor="LightGray" />
    <Label Text="EndAndExpand"
           VerticalOptions="EndAndExpand"
           BackgroundColor="LightGray" />
    <Label Text="FillAndExpand"
           VerticalOptions="FillAndExpand"
           BackgroundColor="LightGray" />
</StackLayout>

前四个 Label 设置 HorizontalOptions 横向配置 Start、Center、End 和 Fill 各元素的显示位置,后四个 Label 设置 VerticalOptions 纵向配置 StartAndExpand、CenterAndExpand、EndAndExpand 和 FillAndExpand 在剩余空间中的位置。

  1. 调试 Android 上的应用:
  • StackLayout 仅遵循与 StackLayout 方向相反的子元素位置配置。 因此,Vertical 方向的 HorizontalOptions 属性设置时有效
  • StackLayout 只能按照其方向扩展元素位置。 因此,Vertical 方向的 StackLayout 可以扩展 Label 子元素。 这意味着,对于 Vertical 对齐方式,每个 Label 在 StackLayout 内占据相同的空间量。 但是,只有最后一个 Label(可将 VerticalOptions 属性设置为 FillAndExpand)具有不同的大小

*以上代码中 StackLayout.Orientation 默认为 Vertical,故前四个 Label 配置 HorizontalOptions 位置有效,后四个 Label 配置 VerticalOptions 为 Expand 有效
*使用 StackLayout 中的所有空间时,Expand 不起作用

相关文章

网友评论

      本文标题:了解 Xamarin.Forms 创建移动应用程序的基础知识 1

      本文链接:https://www.haomeiwen.com/subject/cgfpdhtx.html