Rabu, 29 Mei 2013

Me-nonaktifkan (Disable) Tombol Back Button pada Android

Me-nonaktifkan Disable Tombol Back Button pada AndroidMenonaktifkan (Disable) Tombol Back Button pada Android sebenarnya masalah sepele. Tetapi bisa membuat penasaran ketika sedang membutuhkan ^_^.

Kode program ini mempunyai kegunaan untuk menangkap event ketika tombol Back HP/Device Android ditekan agar kita bisa menjalankan dahulu kode program yang kita inginkan kemudian baru menutup Aplikasi atau Activity yang sedang di depan atau memberi konfirmasi, misalnya "Apakah Anda Yakin Akan Keluar?". Kira-kira seperti itulah kegunaannya.

Pertama buat dahulu Project baru. Di MainActivity.java ketikkan kode program berikut :


package com.amijaya.disable_back_button;

import android.os.Bundle;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.view.KeyEvent;
import android.view.Menu;

public class MainActivity extends Activity {

 @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;
 }
 
 @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if ((keyCode == KeyEvent.KEYCODE_BACK)) {
            //Log.d(this.getClass().getName(), "back button pressed");
            //Toast.makeText(getApplicationContext(), "Tidak Bisa Back", Toast.LENGTH_LONG).show();
            
         AlertDialog.Builder builder = new AlertDialog.Builder(MainActivity.this);
         builder.setTitle("Anda Yakin ?");
         String[] pilihan = {"Ya", "Tdk"};
         builder.setItems(pilihan, new DialogInterface.OnClickListener() {
    public void onClick(DialogInterface dialog, int item) {
     switch(item){
     case 0 :
      finish();
      break;
     case 1 :
      
      break;
     }
    }
   });
         builder.create().show();
         
         return false;
        }
        return super.onKeyDown(keyCode, event);
    }

}

Kemudian layout activity_main.xml kita biarkan saja seperti apa adanya :

<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>

File konfigurasi AndroidManifest.xml juga biarkan saja seperti apa adanya :

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.amijaya.disable_back_button"
    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.disable_back_button.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 :

Me-nonaktifkan Disable Tombol Back Button pada Android

Project dapat didownload disini. Jika kesulitan, ini cara downloadnya 

Semoga bermanfaat suatu saat nanti :)


4 komentar:

  1. thx infonya gan sangat membantu

    BalasHapus
  2. Kalo uda di download diapain, saya gangerti, please bantu

    BalasHapus
    Balasan
    1. https://rendy37.wordpress.com/2013/07/10/tutorial-mematikan-tombol-dan-lampu-capacitive-di-smartfren-andromax-u/

      Hapus
  3. sangat membantu.. terima kasih ya mas..

    BalasHapus