August 13, 2021

Best way for splash screen in Android

By lj007

To add own splash screen you need to create your own theme for your launcher activity.

Create custom style for activity in  style.xml

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

Here I have created splash_background.xml file in drawable, which contains gradient and app logo.

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">

    <item android:drawable="@drawable/gradient" >
    </item>

    <item>
        <bitmap
            android:gravity="center"
            android:src="@drawable/ic_logo"/>
    </item>

</layer-list>

The final step, Assign your theme to activity in Manifest.xml file.

<activity
            android:name=".MyActivity"
            android:screenOrientation="portrait"
            android:theme="@style/SplashTheme">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>

Now you are ready to rock!