Membuat dialog dan toast aplikasi android dengan eclipse ADT
Dalam sebuah aplikasi, kotak dialog merupakan sarana interaktif antara user dengan aplikasi itu sendiri. Misalnya jika kita ingin keluar dari aplikasi, biasanya muncul peringatan berisi pertanyaan “Are you sure to quit?” dan tersedia tombol “yes” dan “cancel”. Pada bagian ini, kita mengimplementasikan 3 macam dialog yaitu:
Toast
ListDialog
AlertDialog
Berikut ini langkah pembuatannya:
Silahkan membuat proyek android baru dengan eclipse ADT.
Pada layout utama silahkan desain tampilan seperti berikut:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<Button android:layout_width="fill_parent"
android:id="@+id/toastBtn"
android:layout_height="wrap_content"
android:text="@string/toastTextBtn"></Button>
<Button android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/listDialogBtn"
android:text="@string/listDialogTextBtn"></Button>
<Button android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/exitTextBtn"
android:id="@+id/exitBtn"></Button>
</LinearLayout>
Untuk mempermudah pemahaman, berikut ini adalah tampilan visual yang dihasilkan:
3. Untuk merubah tampilan text, silahkan tambahkan 3 string element pada ..res/values/Strings.xml menjadi seperti berikut:
<?xml version="1.0" encoding="utf-8"?>
<resources>
<string name="app_name">Dialog Priyadi</string>
<string name="action_settings">Settings</string>
<string name="hello_world">Halo Priyadi!</string>
<string name="toastTextBtn">Panggil Toast</string>
<string name="exitTextBtn">Keluar Applikasi</string>
<string name="listDialogTextBtn">Panggil List Dialog</string>
</resources>
Berikut ini tampilan visual proyek yang mungkin bisa membantu pemahaman:
4. Lakukan koding pada bagian aktifitas utama java pada file ..src/packagename/MainActivity.java menjadi seperti berikut :
package com.dialogpri;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.app.AlertDialog;
import android.content.DialogInterface;
//import android.content.DialogInterface.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
import android.view.View;
import android.view.View.OnClickListener;
public class MainActivity extends Activity implements OnClickListener{
Button pesanToast;
Button keluar;
Button tampilList;
Button tampilDialog;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
pesanToast = (Button) findViewById(R.id.toastBtn);
pesanToast.setOnClickListener(this);
keluar = (Button) findViewById(R.id.exitBtn);
keluar.setOnClickListener(this);
tampilList = (Button)
findViewById(R.id.listDialogBtn);
tampilList.setOnClickListener(this);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
//metode menu
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
public void onClick(View clicked) {
//pilihan event yg akan dijalankan
switch (clicked.getId()) {
case R.id.listDialogBtn:
munculListDialog();
// Toast.makeText(this, "Kamu memilih Toast",
// Toast.LENGTH_SHORT).show();
break;
case R.id.toastBtn:
Toast.makeText(this, "Kamu memilih Toast",
Toast.LENGTH_SHORT).show();
break;
case R.id.exitBtn:
exit();
break;
}
}
private void munculListDialog() {
// TODO Auto-generated method stub
final CharSequence[] items = { "Es Teh", "Es Jeruk",
"Lemon Squash","Soft Drink" };
AlertDialog.Builder kk = new AlertDialog.Builder(this);
kk.setTitle("Pilih Minuman");
kk.setItems(items, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int item) {
Toast.makeText(getApplicationContext(), items[item],
Toast.LENGTH_SHORT).show();
}
}).show();
}
private void exit() {
AlertDialog.Builder builder = new AlertDialog.Builder(this);
builder.setMessage("Apakah Kamu Benar-Benar ingin keluar?")
.setCancelable(false)
.setPositiveButton("Ya", new
//aksi jika "Ya"
DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog,
int id) {
//sesuaikan dg nama main_class
MainActivity.this.finish();
}
}
)
.setNegativeButton("Tidak",new
//aksi jika tidak
DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog,
int arg1) {
// TODO Auto-generated method stub
dialog.cancel();
}
}).show();
}
}
PEMBAHASAN PROGRAM
Perhatikan MainActivity.java, kita bagi menjadi 5 blok yang memiliki peran sendiri-sendiri
Blok pertama adalah deklarasi variabel yang akan menampung nilai-nilai yang diberikan button. Disana ada => Button pesanToast; Button keluar; Button tampilList; Button tampilDialog;
Blok metode “void onCreate..” melakukan sinkronisasi object terhadap widget button pada layout ActivityMain.xml sekaligus mengaktifkan button.
Blok “void onclick...” merupakan pemilihan fungsi yang akan dijalankan pada masing-masing button.
Blok “.. munculListDialog” merupakan metode yang dipanggil ketika button “panggil list dialog‟ diklik.
Blok “void exit” merupakan metode yang dipanggil ketika button “keluar aplikasi‟ diklik.
Activity ini mengimplementasikan class OnClickListener . Class ini memiliki sebuah method onClick yang bertugas merespon button pada saat diklik. Didalam method onClick(), button direspon berdasarkan idnya melalui perulangan switch-case. Jika button pemilik id “listDialogBtn‟ diklik maka kemudian memanggil fungsi munculListDialog() , jika button ber-id “toastBtn‟ diklik, maka activity mengenerate sebuah toast, sedangkan jika yang diklik adalah button ber-id “exitBtn‟ maka yang dieksekusi adalah fungsi exit().
PEMBAHASAN PROGRAM
Perhatikan MainActivity.java, kita bagi menjadi 5 blok yang memiliki peran sendiri-sendiri
Blok pertama adalah deklarasi variabel yang akan menampung nilai-nilai yang diberikan button. Disana ada => Button pesanToast; Button keluar; Button tampilList; Button tampilDialog;
Blok metode “void onCreate..” melakukan sinkronisasi object terhadap widget button pada layout ActivityMain.xml sekaligus mengaktifkan button.
Blok “void onclick...” merupakan pemilihan fungsi yang akan dijalankan pada masing-masing button.
Blok “.. munculListDialog” merupakan metode yang dipanggil ketika button “panggil list dialog‟ diklik.
Blok “void exit” merupakan metode yang dipanggil ketika button “keluar aplikasi‟ diklik.
Activity ini mengimplementasikan class OnClickListener . Class ini memiliki sebuah method onClick yang bertugas merespon button pada saat diklik. Didalam method onClick(), button direspon berdasarkan idnya melalui perulangan switch-case. Jika button pemilik id “listDialogBtn‟ diklik maka kemudian memanggil fungsi munculListDialog() , jika button ber-id “toastBtn‟ diklik, maka activity mengenerate sebuah toast, sedangkan jika yang diklik adalah button ber-id “exitBtn‟ maka yang dieksekusi adalah fungsi exit().
Penjelasan dalam bentuk video dapat disimak dibawah ini:
Komentar
Posting Komentar
Berikan komentar yang positif & konstruktif.