Monday, August 20, 2018

Membuat Splash Screen di Android

Pada beberapa aplikasi Android, terdapat splash screen yang akan tampil saat aplikasi pertama di jalankan. Fungsi dari splash screen tersebut bermacam-macam, ada yang digunakan untuk load data, untuk menjalankan file konfigurasi, atau untuk proses suatu algoritma tertentu.

Ada juga splash screen yang tidak ada fungsinya sama sekali, khusus digunakan untuk tampilan awal saja. Pada artikel ini akan saya bahas pembuatan splash screen yang digunakan untuk tampilan saja, tidak ada fungsi khusus di dalamnya. 

Setelah membuat project baru dari AndroidStudio, buat activity baru dengan nama SplashActivity. jadikan activity tersebut sebagai launcher dan tambahkan code untuk file manifests/AndroidManifest.xml sebagai berikut:
<activity android:name=".MainActivity"></activity>
<activity android:configchanges="orientation|keyboardHidden|screenSize" 
    android:name=".SplashActivity" 
    android:theme="@style/AppTheme.Fullscreen">
     <intent-filter>
          <action android:name="android.intent.action.MAIN">
          <category android:name="android.intent.category.LAUNCHER">
     </category></action></intent-filter>
</activity>
Pada code diatas masih muncul error di editor, karena tema yang digunakan SplashActivity tidak ditemukan, selanjutnya tambahkan code berikut di file /res/values/styles.xml:
<style name="AppTheme.Fullscreen">
    <item name="windowActionBar">false</item>
    <item name="windowNoTitle">true</item>
    <item name="android:windowFullscreen">true</item>
</style>
Untuk tampilan layout-nya, kita bisa sesuaikan file /res/layout/activity_splash.xml dengan code dibawah ini:
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    android:background="@color/colorPrimaryDark"
    android:orientation="vertical"
    tools:context=".SplashActivity">

    <ImageView
        android:id="@+id/imageView"
        android:layout_width="200dp"
        android:layout_centerInParent="true"
        android:layout_height="wrap_content"
        android:contentDescription="Logo"
        app:srcCompat="@drawable/logo_movie" />
</RelativeLayout>


Dalam pembuatan logo contoh aplikasi ini saya gunakan web online https://logomakr.com/, dimana kita tinggal sesuaikan saja dengan icon dan font yang bisa kita butuhkan dan edit secara online. File logo dalam format png silahkan di-copy pada folder /res/drawable dan di panggil sesuai namanya seperti pada code diatas.

Terakhir, pada file SplashActivity tambahkan code berikut pada fungsi onCreate( ). Code tersebut berfungsi mengarahkan ke MainActivity setelah delay waktu 2 detik.
new Handler().postDelayed(new Runnable() {
    @Override
    public void run() {
        Intent intent = new Intent(SplashActivity.this, MainActivity.class);
        startActivity(intent);
        finish();
    }
}, 2000);
Dan tampilan akhirnya kurang lebih seperti pada gambar dibawah ini:


Silahkan untuk dicoba code diatas untuk membuat splash screen di Android, jika ada yang ingin ditanyakan bisa tinggalkan di kolom pesan yaa

0 comments:

Post a Comment