Android splash screen image sizes to fit all devices

I have a full screen PNG I want to display on splash. Only one error there, and I have no idea what size to put in every drawable folder (ldpi, mdpi, hdpi, and xhdpi). My application is supposed to run good and beautiful on all phones and tablets. What sizes (in pixels) should I create so the splash displays nice on all screens?

Answers 10




  • In my case, I used list drawable in style.xml. With layer list drawable, you have just needed one png for all screen size.

    <resources xmlns:tools="http://schemas.android.com/tools">
    <!-- Base application theme. -->
    <style name="AppTheme" parent="android:Theme.Holo.Light.DarkActionBar">
        <item name="android:windowNoTitle">true</item>
        <item name="android:windowBackground">@drawable/flash_screen</item>
        <item name="android:windowTranslucentStatus" tools:ignore="NewApi">true</item>
    </style>
    

    and flash_screen.xml in drawable folder.

    <?xml version="1.0" encoding="utf-8"?>
     <layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item android:drawable="@android:color/white"></item>
    <item>
        <bitmap android:src="@drawable/background_noizi" android:gravity="center"></bitmap>
    </item>
    

    "background_noizi" is png in drawable folder. I hope it help


  • Density buckets
    
    LDPI    120dpi    .75x
    MDPI    160dpi    1x
    HDPI    240dpi    1.5x
    XHDPI   320dpi    2x
    XXHDPI  480dpi    3x
    XXXHDPI 640dpi    4x
    
    px / dp = dpi / 160 dpi
    

Related Articles