在 xamarin 表单中以堆栈或相对布局重叠图像
Overlap images in a stack or relative layout in xamarin forms
我的 PCL 项目的 Assets 文件夹中有一个图像列表,所有这些图像都是嵌入式资源,我可以获取这些图像并在派生的 ContentPage 中正常显示 class不使用 xaml,但是,我需要将这些图像重叠到另一个图像,如下例所示:
如何像显示的图像那样定位这些图像?
有人可以帮助我吗?
我在 Xamarin Froms c#
中完全是菜鸟
提前致谢!
您提到 "without using XAML" 我了解到您正在使用 C#(代码隐藏)来加载和显示您的图像。
使图像重叠的最简单方法是将所有图像设为 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);
}
}
stackImages
StackLayout
将持有图像。
reactivex.png
资源中的图像名称。
负数 Spacing
会告诉您想要多少重叠。另外,请记住 Spacing
和 Image
Width
高度相关。
在上面的示例中,通过将间距设置为 -25,我重叠了几乎一半的图像。
此外,如果所有图像共享相同的大小,或者至少相同 Width
,上述方法将工作正常。
我的 PCL 项目的 Assets 文件夹中有一个图像列表,所有这些图像都是嵌入式资源,我可以获取这些图像并在派生的 ContentPage 中正常显示 class不使用 xaml,但是,我需要将这些图像重叠到另一个图像,如下例所示:
如何像显示的图像那样定位这些图像? 有人可以帮助我吗? 我在 Xamarin Froms c#
中完全是菜鸟提前致谢!
您提到 "without using XAML" 我了解到您正在使用 C#(代码隐藏)来加载和显示您的图像。
使图像重叠的最简单方法是将所有图像设为 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);
}
}
stackImages
StackLayout
将持有图像。
reactivex.png
资源中的图像名称。
负数 Spacing
会告诉您想要多少重叠。另外,请记住 Spacing
和 Image
Width
高度相关。
在上面的示例中,通过将间距设置为 -25,我重叠了几乎一半的图像。
此外,如果所有图像共享相同的大小,或者至少相同 Width
,上述方法将工作正常。