xamarin 如何在整个屏幕中填充图像

jgzswidk  于 2022-12-16  发布在  其他
关注(0)|答案(2)|浏览(130)

我正在写一个简单的应用程序,我需要设置一张照片,使它充满整个屏幕。它看起来很好的水平,但我已经工作了一个多小时,我仍然不能。我不知道,或我太愚蠢或这个android不喜欢我那么多。我尝试使用youtube,互联网等,但没有工作的方式,我想要的
如果有人告诉我怎么做,或者至少给予我一条路,我会很感激的,因为。加上额外的东西,这张照片的大小是1920x1080
下面是我尝试做的代码:

<StackLayout>
    <Image Source="wallpaper1.png" Rotation="90 HorizontalOptions="Center" VerticalOptions="Center" Aspect="Fill"></Image>

   
 </StackLayout>

问候

cetgtptt

cetgtptt1#

您将希望将HorizontalOptions更改为“CenterAndExpand”,并且您将希望对VerticalOptions执行相同的操作。这将告诉图像尽可能地扩展,但如果有元素占用其上方的空间,则可以将其限制为这些元素。
或者,您可以将图像放在绝对布局中而不是堆栈布局中,并将以下内容放在Image标签中:

<AbsoluteLayout
    HorizontalOptions="FillAndExpand"
    VerticalOptions="FillAndExpand"/>
    <Image
        AbsoluteLayout.LayoutBounds="0,0,1,1"
        AbsoluteLayout.LayoutFlags="All"
        .../>
</AbsoluteLayout>

上述操作将导致图像充满整个屏幕。LayoutBounds属性告诉图像从X和Y坐标0开始。1和1属性指示在X和Y方向上扩展的比例。在本例中,它是可用空间的100%。
LayoutFlags=“All”允许以这种方式解释边界。

0dxa2lsx

0dxa2lsx2#

.xaml:

<StackLayout>
        <Image  Source="ddd.png" ></Image>
</StackLayout>

将此添加到您的MainActivity.cs:

protected override void OnCreate(Bundle savedInstanceState)
{
    ...

    IWindowInsetsController wicController = Window.InsetsController;
    Window.SetDecorFitsSystemWindows(false);
    Window.SetFlags(WindowManagerFlags.Fullscreen, WindowManagerFlags.Fullscreen);

    if (wicController != null)
    {
       wicController.Hide(WindowInsets.Type.NavigationBars());
    }
           
    this.RequestedOrientation = ScreenOrientation.Landscape;
}

相关问题