0

我的 PCL 项目的 Assets 文件夹中有一个图像列表,所有这些图像都作为嵌入资源,我可以在不使用 xaml 的情况下获取这些图像并在 ContentPage 派生类中正常显示,但是,我需要将这些图像重叠到另一个,如下例所示: 在此处输入图像描述

我如何像显示的图像一样定位这些图像?有人可以帮我吗?我在 Xamarin Froms c# 中完全是菜鸟

提前致谢!

4

1 回答 1

2

您提到“不使用 XAML”我明白您正在使用 C#(代码隐藏)来加载和呈现您的图像。

在图像上进行一些重叠的最简单方法是使所有图像成为 a 的子级StackLayout并在StackLayout.

在此处输入图像描述

private void LoadSomeImages()
{
    stackImages.Children.Clear();
    stackImages.Spacing = -25;
    stackImages.Orientation = StackOrientation.Horizontal;

    for (int i = 0; i < 4; i++)
    {
        var image = new Image
        {
            WidthRequest = 60,
            HeightRequest = 59
        };

        image.Source = ImageSource.FromResource("SWOverlappedImages.reactivex.png");
        stackImages.Children.Add(image);
    }
}

存在

stackImagesStackLayout将持有图像的那个。

reactivex.png资源中的图像名称。

负数Spacing会告诉你想要多少重叠。另外,请记住SpacingImage Width是高度相关的。

在上面的示例中,通过将间距设置为 -25,我几乎重叠了一半的图像。

此外,如果所有图像共享相同的大小,或者至少相同,上述将正常工作Width

于 2018-04-01T00:52:24.100 回答