Xamarin 在底部形成相对布局位置 stacklayout

Xamarin forms relative layout position stacklayout at bottom

我想使用仅使用 xaml 使用 Xamarin 表单的相对布局将 Stacklayout 定位在图像顶部的底部。 xaml 看起来像这样。

<RelativeLayout>
    <Image />
    <StackLayout Orientation="Horizontal">
        <Label Text="Dark Mode" />
        <Switch />
        <Label Text="Light Mode" />
    </StackLayout>
</RelativeLayout>

我的 StackLayout 应该有什么 X 和 Y 约束,以便它位于图像的顶部和底部 it.Also 添加了描述我期望的结果的图像。

预期:

我确实尝试为图像和堆栈布局提供 RelativeLayout.XConstraintsRelativeLayout.YConstraints ,但是无法弄清楚使用什么值来获得所需的结果。

您可以在整个图片中使用一个 StackLayout,并在其中放置另一个 StackLayout,该 StackLayout 将放置在底部:

<RelativeLayout>
  <Image Aspect="AspectFill"
         RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width}"
         RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height}"/>
  <StackLayout
         RelativeLayout.WidthConstraint="{ConstraintExpression Type=RelativeToParent, Property=Width}"
         RelativeLayout.HeightConstraint="{ConstraintExpression Type=RelativeToParent, Property=Height}">
      <StackLayout Orientation="Horizontal" VerticalOptions="EndAndExpand" HorizontalOptions="Center">
          <Label Text="Dark Mode" />
          <Switch />
          <Label Text="Light Mode" />
      </StackLayout>
  </StackLayout>