【发布时间】:2020-03-30 18:23:24
【问题描述】:
我一直在寻找这个,但找不到任何东西。
我想为图像设置最大高度。它可能在其他元素内,也可能不在。
我不希望该图像具有静态尺寸。
感谢任何帮助
【问题讨论】:
-
没有通用的答案。 Xamarin 布局很复杂,在不知道上下文的情况下将任何内容设置为 100% 的固定大小(在您的情况下为最大大小)并非易事。所以你必须先显示你当前的代码。
标签: xamarin xamarin.forms
我一直在寻找这个,但找不到任何东西。
我想为图像设置最大高度。它可能在其他元素内,也可能不在。
我不希望该图像具有静态尺寸。
感谢任何帮助
【问题讨论】:
标签: xamarin xamarin.forms
Xamarin.Forms 中没有最大高度属性,CSS 样式也不支持它。已经有增加最大高度属性的增强请求:https://www.google.com/search?q=Xamarin.+Forms+maximum+height&oq=Xamarin.+Forms+maximum+height&aqs=chrome..69i57j0.6714j0j7&sourceid=chrome&ie=UTF-8
但是,您可以监视 Image 的 SizeChanged 事件并检查高度并根据需要重新设置,例如:
XAML:
<Image x:Name="image" Source="imagename.png" />
后面的C#代码:
public MainPage()
{
InitializeComponent();
image.SizeChanged += (sender, e) => {
if (image.Height > 50)
image.HeightRequest = 50;
};
}
【讨论】:
如果您将 VerticalOptions 设置为填充以外的其他值,则使用 HeightRequest 属性,例如
Image fileIcon = new Image
{
Source = "icon",
HeightRequest = 50,
VerticalOptions = LayoutOptions.Center,
HorizontalOptions = LayoutOptions.Center
};
【讨论】: