Membuat Splash Screen di Aplikasi Android

Aldi Fahrezi
temancatat
Published in
2 min readApr 4, 2018

Apikasi Android terkadang memiliki tampilan logo saat aplikasi pertama kali dibuka. Tampilan ini biasanya digunakan untuk menunjukkan kepada pengguna branding yang ingin disampaikan oleh aplikasi. Tampilan inilah yang disebut dengan Splash Screen.

Bagaimana cara membuatnya?

Pada dasarnya splash screen merupakan suatu Activity pada aplikasi Android yang diberikan intent-filter action = android.intent.action.MAIN (agar ditampilkan saat pertama kali aplikasi dibuka). Berikut adalah cuplikan kode activity sebagai implementasi Splash Screen.

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

/* New Handler to start the Main-Activity
* and close this SplashActivity-Screen after some seconds.*/
new Handler().postDelayed(new Runnable(){
@Override
public void run() {
Intent mainIntent = new Intent(SplashActivity.this,MainActivity.class);
SplashActivity.this.startActivity(mainIntent);
SplashActivity.this.finish();
}
}, SPLASH_DISPLAY_LENGTH);
}

Pada dasarnya, kode ini membuat sebuah Handler untuk menjalankan Activity setelah Splash Screen serta menutupnya setelah waktu yang ditentukan (SPLASH_DISPLAY_LENGTH) dalam satuan ms.

Lalu, bagaimana agar tampilan splash screen sesuai dengan yang kita inginkan?

Penggunaan Custom Android Theme pada Activity Splash Screen

Untuk mengatur tampilan splash screen, buat custom theme/style pada values/styles.xml yang akan digunakan sebagai styling activity splash screen pada AndroidManifest.xml.

Berikut adalah cuplikan kode theme untuk splash screen yang dibuat

<style name="SplashTheme">
<item nae="android:windowBackground">@drawable/img_splash_screen</item>
<item name="colorPrimary">@color/colorPrimary</item>
<item name="colorPrimaryDark">@color/colorPrimaryDark</item>
<item name="colorAccent">@color/colorAccent</item>
<item name="windowActionBar">false</item>
<item name="windowNoTitle">true</item>
</style>

Anda dapat menambahkan informasi color apapun yang akan digunakan dalam membuat splash screen. windowActionBar diberikan nilai false dan windowNoTitle diberikan nilai True agar splash screen mengisi seluruh layar perangkat android.

Lalu, pengaturan layout tampilan terdapat pada android:windowBackground. Berikut adalah contoh layout yang kami gunakan (Menampilkan logo di tengah-tengah layar).

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

android:drawable menentukan warna background pada splash screen. Kemudian elemen bitmap memberikan logo pada tengah layar. Image logo diberikan pada android:src.

Conclusion

Mudah bukan?

--

--