<?xml version="1.0" encoding="utf-8" ?>
<ContentPage xmlns="http://xamarin.com/schemas/2014/forms"
xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml"
x:Class="StackStuff.MainPage">
<StackLayout Orientation="Vertical">
<Image Source="image.jpg" VerticalOptions="Fill" HorizontalOptions="Fill"/>
</StackLayout>
</ContentPage>
我有一个 Xamarin.Forms 项目,我希望图像在 StackLayout 中调整大小。我将其简化为上面的最小代码,如果我调整窗口大小,图像只会根据窗口宽度调整大小。即,如果我改变高度,图像会从窗口底部剪掉。
如果我将 StackLayout 的方向更改为水平,我会得到相反的结果 - 它会根据高度的变化而不是宽度来调整大小。
如果我完全删除 StackLayout 并且页面上只有图像,那么整个图像将始终可见,这是我在 StackLayout 内时所期望的行为。
谁能解释这是为什么?如果我用 BoxView 替换 Image,它会很高兴地调整大小并保持在 StackLayout 的范围内。
谢谢。