Xamarin StackLayout 水平和垂直

Pul*_*rma 1 xaml label xamarin.ios xamarin.forms stacklayout

<StackLayout>
    <Label HorizontalOptions="Center" VerticalOptions="Center" Text="Hello"/>
    <Slider/> 
 </StackLayout>
<StackLayout HorizontalOptions="Center" VerticalOptions="Center" >
   <Label Text="Hello" />
    <Slider />
</StackLayout>
Run Code Online (Sandbox Code Playgroud)

上述两个代码的输出是相同的,任何人都可以解释为 stacklayout 指定垂直和水平选项与在 label 处定义这些属性之间的区别吗?

Col*_*SFT 5

正如杰森提到的,LayoutOptions仅适用于相对于其父级的视图/布局。

在你的情况下,HorizontalOptions="Center"适用于Labeland StackLayout,这是完全不同的。

对于第一个场景,Label 位于外部 stacklayout 的中心。

对于第二种情况,StackLayout位于外部布局的中心(这里我使用StackLayout进行测试)。

请检查以下屏幕截图以澄清差异。

在此输入图像描述