微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Xamarin Android - 初始屏幕图像适合

如何解决Xamarin Android - 初始屏幕图像适合

我有一个 Xamarin.Forms 应用,但这个问题仅与 Android 相关。

我有一个带有徽标和背景颜色的闪屏,我想更新它。我使用了飞溅主题样式,它指的是包含图像的 xml。

主题

enter image description here

XML

enter image description here

然后我使用了一个启动 Activity 来让它工作并且它完美地工作。

现在我想使用图像作为背景而不是颜色,所以我所做的是创建带有顶部徽标的背景图像,将其另存为一个图像并将其用作启动画面。这导致了一些问题。

图像在屏幕上显示太小,我希望该图像适合屏幕(因此具有锁定纵横比的全屏),但我无法使其正常工作。我能找到的唯一选项是“填充”,这会导致图像变形。我可以在我的屏幕上得到完美的效果,但是具有不同比例的屏幕可能会看到变形的图像。我拥有的图像是一个正方形,以确保在使用 fit 时,整个屏幕都被填满。现在我只是在寻找一种方法来使图像适合屏幕,而不是填满屏幕。

我试图在这里形象化我的问题:

enter image description here

所以我在左边有一个方形图像,当在手机上显示时(右)它应该适合屏幕而不改变纵横比。

我读过一些将图像包装在 xml 中并将其设置在那里的内容,但这对我不起作用。

希望有人能帮忙。

解决方法

这与您的方法相同。它对我有用。 “launchscreen”是带有 different size 的背景图片,“testappwhitecolor”是背景图片的颜色。

XML

<?xml version="1.0" encoding="UTF-8" ?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android" >
   <item>
    <color android:color="@color/testappwhitecolor" />
   </item>
  <item
      android:drawable="@drawable/launchscreen"
      android:gravity="center"/>
</layer-list>

主题

    <style name="Theme.Splash" parent="@style/Theme.AppCompat.Light.NoActionBar">
        <item name="android:windowBackground">@drawable/background_splash_screen</item>
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowFullscreen">true</item>
        <item name="android:windowDisablePreview">false</item>
        <item name="android:windowAnimationStyle">@null</item>
    </style>

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。