Android - 如何将我的闪屏图形显示得更大?

时间:2016-01-28 00:08:42

标签: java android image size splash

我似乎无法弄清楚如何让我的闪屏图形显示更大,有人可以帮忙吗?我的图像是一个288x69像素的png文件,但在Android设备上它渲染很小,我无法弄清楚如何更改它。除了图像大小,我的启动画面效果很好。它是用xml绘制的android:drawable,但不管我尝试它只是不会渲染任何更大。任何提示将非常感谢!

在导入到android studio之后,图像被添加到android studio下的res / mipmap / ..并且xxxhdpi版本是192 x 192像素。

要创建启动画面,请在我的AndroidManifest.xml中输入以下内容:

        <activity
        android:name=".SplashActivity"
        android:theme="@style/SplashTheme">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

在res / drawable下,我创建了包含以下内容的background_splash.xml:

<?xml version="1.0" encoding="utf-8"?>

<item
    android:drawable="@color/white"
    android:id="@+id/splashDrawable"
    android:layout_width="match_parent"
    android:layout_height="match_parent"/>


<item>
    <bitmap
        android:gravity="center"
        android:src="@mipmap/my_logo"
        android:id="@+id/splashLogo"/>

</item>

在我的java文件夹中,我有以下SplashActivity.java,这会在应用程序加载完成后导致启动消失:

public class SplashActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    Intent intent = new Intent(this, MainActivity.class);
    startActivity(intent);
    finish();
}

}

在我的styles.xml文件中,我有:

  <style name="SplashTheme" parent="Theme.AppCompat.NoActionBar">
    <item name="android:windowBackground">@drawable/background_splash</item>
</style>

2 个答案:

答案 0 :(得分:2)

对于其他正在阅读此问题的人;

我的最终解决方案是使用/ res / drawable文件夹而不是/ res / mipmap。在您的硬盘上,在android studio之外,浏览到app / src / main / res并确保您有名为drawable-hdpi,drawable-mdpi,drawable-xhdpi和drawable-xxhdpi的文件夹。手动将图像大小调整为您认为适合每种尺寸的大小并复制图像。现在回到android工作室,图像应显示在android studio的/ res / drawable区域。现在我更改我的res / drawable / background_splash.xml文件以引用@drawable而不是@mipmap,如下所示,并且它可以正常工作!我只测试了几个设备,但图像看起来不错。我不是100%确定它选择了合适的分辨率,但看起来合适。

<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

<item
    android:drawable="@color/white"
    android:id="@+id/splashDrawable"
    android:layout_width="10px"
    android:layout_height="10px"/>


<item>
    <bitmap
        android:gravity="center"
        android:width="10px"
        android:height="10px"
        android:src="@drawable/bodysite_logo"
        android:id="@+id/splashLogo"/>

</item>

答案 1 :(得分:1)

您需要具有更高分辨率的图像。手机显示的日期大约为300dpi,远低于图像分辨率。这就是你看到小图像的原因。