Kamis, 13 Juni 2013

Membuat Klik Back Button Dua Kali untuk Exit pada Android

Membuat Klik Back Button Dua Kali untuk Exit pada AndroidMembuat Klik Back Button Dua Kali untuk Exit pada Android sebenarnya mempunyai kegunaan mirip dengan cara pada artikel Mengontrol Button Back pada Android. Banyak sekali caranya mau keluar program di Android hehe ^_^. Teknik ini banyak digunakan di berbagai program Android komersial, kuncinya ada pada event onBackPressed, dan Menggunakan Handler.postDelayed. Ubah angka 2000 yang berarti 2000 milisecond atau 2 detik pada contoh di bawah ini menjadi angka lain, misal 3000 berarti 3 detik.
Ok kita mulai, buat Project Android baru. Pada MainActivity.java kita masukkan kode program seperti ini :


package com.amijaya.click_back_button_twice_to_exit;

import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.view.Menu;
import android.widget.Toast;

public class MainActivity extends Activity {
// http://cariprogram.blogspot.com
// nuramijaya@gmail.com

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}

@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_main, menu);
return true;
}

boolean doubleBackToExitPressedOnce = false;

@Override
    public void onBackPressed() {
        if (doubleBackToExitPressedOnce) {
            super.onBackPressed();
            return;
        }
        this.doubleBackToExitPressedOnce = true;
        Toast.makeText(this, "Klik BACK dua kali untuk exit", Toast.LENGTH_SHORT).show();
        new Handler().postDelayed(new Runnable() {

            @Override
            public void run() {
             doubleBackToExitPressedOnce=false;   

            }
        }, 2000);
    }

}

Kemudian tampilannya ada di activity_main.xml tidak perlu diubah sama sekali, misalnya seperti ini :

<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"
    tools:context=".MainActivity" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:layout_centerVertical="true"
        android:text="@string/hello_world" />

</RelativeLayout>

Untuk AndroidManifest.xml juga tidak perlu diubah, seperti defaultnya di bawah ini :

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.amijaya.click_back_button_twice_to_exit"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="16" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/ic_launcher"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.amijaya.click_back_button_twice_to_exit.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>

Hasilnya :

Membuat Klik Back Button Dua Kali untuk Exit pada Android

Project selengkapnya silakan download disini. Jika kesulitan bisa melihat cara downloadnya seperti ini.

Semoga menarik :)

Tidak ada komentar:

Posting Komentar