2

我正在使用创建启动画面中描述的方法。它使用具有背景和图像的资源(图层列表)。这用作windowBackground主题,并且该主题设置在活动上。现在我创建了所有drawable文件夹并将不同大小的图像放在那里。

现在我有这些问题:

  • 在智能手机上以横向启动应用程序会导致黑色闪屏(在平板电脑上它保持纵向)
  • drawable-land不拍摄文件夹中的图像
  • 在某些设备上图像的大小应该更大

我应该以哪种分辨率提供图像?图像的宽度应为显示宽度的三分之一。我该如何管理?

我尝试将此表用作参考,并通过取纵向尺寸的三分之一来计算宽度。例如对于 HDPI,480 的三分之一是 144,但平板电脑的宽度为 800(不是 480)。结果图像太小。

此外,我不认为 9-patch 文件可以帮助我。它只描述了放大,但最小的公分母将是 LDPI 大小的图像......对于文本徽标(自定义字体)来说,放大效果不太好。

我有哪些选择?

编辑:

在智能手机上以横向启动应用程序会导致黑色闪屏(在平板电脑上它保持纵向):

添加断点并显示启动画面而不是黑屏。构建一个 apk 并在智能手机上安装是可行的。调试模式不行。

drawable-land不拍摄文件夹中的图像

添加ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation),现在它们是。

但是我仍然不知道如何定义图像,使用这种方法确实会在屏幕上占用一定数量。现在我提供了一个更大的图像(xhdpi 到 hdpi)......

4

1 回答 1

0

您应该将这些图像放在不能绘制的 mipmap 文件夹中。您必须将图像裁剪为三种尺寸的 hpdi、ldpi 和 mdpi。这些 theree 最适合任何 android 设备。(适合所有​​人)。如果要全屏显示图像,则可以定义 android:background="@mipmap/image" 而不是 android:windowBackground="@mipmap/image" 。为了防止 splahscreen 成为横向,您可以在活动中定义屏幕方向,如下所示:

<activity android:name=".Splash_Screen"
 android:screenOrientation="portrait">

如果您不知道图像 ldi、hdpi 和 mdpi 所需的分辨率,那么在 stackoverflow 上有一个问题,谷歌它!希望它有所帮助,对糟糕的英语感到抱歉!

于 2016-08-24T15:29:28.423 回答