Implementasi Splash Screen dengan Timer Android

Di dalam tutorial ini saya akan mengimplementasikan splash screen dengan timer. untuk implementasi splash screen juga dapat menggunakan http atau request ke server, jadi setelah selesai request data dari server maka akan masuk ke dalam activity utama. Jadi mari kita mulai saja tutorial ini.

1. Mari kita abuat aplikasi baru dengan menggunakan android studio File -> New -> New Project.

2. Untuk tutorial kali ini saya tetap menggunakan MainActivity. jadi untuk main activity tidak dihapus.

3. Buat activity baru dengan nama SplashScreen. kemudian masukan kode berikut.

 

package asreds.hikmahsharing.com.splashscreen;

import android.content.Intent;

import android.os.Handler;

import android.support.v7.app.AppCompatActivity;

import android.os.Bundle;  public class SplashScreen extends AppCompatActivity {

    // timer saya set 3 detik atau 3000 ms

    private static int SPLASH_TIME_OUT = 3000;

    @Override

    protected void onCreate(Bundle savedInstanceState) {

        super.onCreate(savedInstanceState);

        setContentView(R.layout.activity_splash_screen);

        new Handler().postDelayed(new Runnable() {

            /*

             * menampilkan splash screen dengan timer

             * untuk kasus ini saya menampilkan text saja. Anda bisa menambahkan sesuai dengan keinginan anda

             */

            @Override

            public void run() {

                // method ini akan di eksekusi setelah timer selesai

                // start Main activity

                Intent i = new Intent(SplashScreen.this, MainActivity.class);

                startActivity(i);

                // tutup activity ini

                finish();

            }

        }, SPLASH_TIME_OUT);

    }

}

 

4. Kemudian buat activity_splash_screen.xml dan masukan kode berikut.

 

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

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"

    xmlns:app="http://schemas.android.com/apk/res-auto"

    android:layout_width="match_parent"

    android:layout_height="match_parent"

    android:background="@color/colorPrimary">

    <TextView

        android:id="@+id/textView"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_alignParentTop="true"

        android:layout_centerHorizontal="true"

        android:layout_marginTop="75dp"

        android:text="Selamat Datang"

        android:textSize="24sp" />

    <ImageView

        android:id="@+id/imageView"

        android:layout_width="wrap_content"

        android:layout_height="wrap_content"

        android:layout_below="@+id/textView"

        android:layout_centerHorizontal="true"

        android:layout_marginTop="26dp"

        app:srcCompat="@mipmap/ic_launcher" />

</RelativeLayout>

 

5. Kemudian buak AndroidManifest.xml dan ganti menjadi seperti berikut ini.

 

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

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="asreds.hikmahsharing.com.splashscreen">

    <application

        android:allowBackup="true"

        android:icon="@mipmap/ic_launcher"

        android:label="@string/app_name"

        android:roundIcon="@mipmap/ic_launcher_round"

        android:supportsRtl="true"

        android:theme="@style/AppTheme">

        <!-- Splash Screen activity -->

        <activity android:name=".SplashScreen">

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />

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

            </intent-filter>

        </activity>

        <!-- Main activity -->

        <activity

            android:name=".MainActivity"

            android:label="@string/app_name" >

        </activity>

    </application>

</manifest>

 

6. jalankan aplikasi, maka splash screen akan muncul selama 3 detik kemudian masuk ke activity selanjutnya.

Terima kasih sudah mampir. dan selamat mencoba

jangan lupa bagikan ya :)