Menu on Android
Seperti aplikasi untuk desktop dan beberapa sistem operasi mobile seperti Palm OS dan WIndows Mobile, Android juga mendukung kegiatan dengan aplikasi menu.
Ikuti langkah - langkah berikut untuk membuat menu sederhana :
1. Buat layout di file XML yang berisi tampilan text
2. Buat kelas Activity di file java
3. Atur Menu
4. Tambahkan item menu reguler ke menu
5. Merespon menu item
1.
Membuat sebuah XML Layout
Langkah pertama adalah membuat file XML Layout sederhana dengan tampilan teks di
dalamnya pada folder res / layout main.xml . File xml ini
akan di load ke Activity saat startup.
| <?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" > <TextView android:id="@+id/textViewId" android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Phone Menus" /> </LinearLayout> |
2. Membuat sebuah file
Activity
| import android.app.Activity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.TextView; public class SimpleMenus extends Activity { // Initialize this in onCreateOptions Menu myMenu = null; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // call layout in main.xml setContentView(R.layout.main); } } |
3.
Setting Menu
Setelah membuat
View dan Activity, sekarang kita akan men-setting program untuk menu
nya
| @Override public boolean onCreateOptionsMenu(Menu menu) { //call the parent to attach any system level menus super.onCreateOptionsMenu(menu); this.myMenu = menu; //add a few normal menus addRegularMenuItems(menu); //it must return true to show the menu //if it is false menu won't show return true; } |
4.
Menambah Menu Item
Untuk
menambah item menu, lihat kode dibawah ini :
| // Adding Regular Menu Items private void addRegularMenuItems(Menu menu){ int base=Menu.FIRST; // value is 1 MenuItem contact = menu.add(base,base,base,"Contact"); contact.setIcon(R.drawable.phone_book); MenuItem message = menu.add(base,base+1,base+1,"Message"); message.setIcon(R.drawable.sms2); MenuItem clear = menu.add(base,base+2,base+2,"Clear"); clear.setIcon(R.drawable.eraser); MenuItem music = menu.add(base,base+3,base+3,"Music"); music.setIcon(R.drawable.tone); MenuItem internet = menu.add(base,base+4,base+4,"Internet"); internet.setIcon(R.drawable.moziila); MenuItem camera = menu.add(base,base+5,base+5,"Camera"); camera.setIcon(R.drawable.kamera2); MenuItem galery = menu.add(base,base+6,base+6,"Galery"); galery.setIcon(R.drawable.galery3); MenuItem game = menu.add(base,base+7,base+7,"Game"); game.setIcon(R.drawable.game2); MenuItem video = menu.add(base,base+8,base+8,"Video"); video.setIcon(R.drawable.handycam); MenuItem setting = menu.add(base,base+9,base+9,"Setting"); setting.setIcon(R.drawable.setting); } |
Menu kelas mendefinisikan beberapa kostanta, salah satunya adalah Menu.FIRST
| MenuItem contact = menu.add(base,base,base,"Contact"); contact.setIcon(R.drawable.phone_book); |
5. Merespon Menu Item
Setelah men-setup menu, kita lanjutkan ke langkah 5. Ketika sebuah item menu di klik maka Android akan memanggil method onOptionsItemSelected() dari kelas Activity dan kemudian menggunakan method getItemId() pada MenuItem untuk menangkap text yang dimasukkan.
| // Responding to Menu -> item clicks @Override public boolean onOptionsItemSelected(MenuItem item) { if (item.getItemId() == 1) { appendText("\nContact"); item.setIcon(R.drawable.phone_book); } else if (item.getItemId() == 2) { appendText("\nMessage"); item.setIcon(R.drawable.sms2); } else if (item.getItemId() == 3) { emptyText(); item.setIcon(R.drawable.eraser); } else if (item.getItemId() == 4) { appendText("\nTone"); item.setIcon(R.drawable.tone); } else if (item.getItemId() == 5) { appendText("\nMoziila"); item.setIcon(R.drawable.setting); } else if (item.getItemId() == 6) { appendText("\nCamera"); item.setIcon(R.drawable.kamera2); } else if (item.getItemId() == 7) { appendText("\nGalery"); item.setIcon(R.drawable.galery3); } else if (item.getItemId() == 8) { appendText("\nGame"); item.setIcon(R.drawable.game2); } else if (item.getItemId() == 9) { appendText("\nVideo"); item.setIcon(R.drawable.handycam); } else if(item.getItemId() == 10) { appendText("\nSetting"); item.setIcon(R.drawable.setting); } return true; } |
6.
Menambah dan Menghapus text
| //Given a string of text append it to the TextView private void appendText(String text) { TextView tv = (TextView)this.findViewById(R.id.textViewId); tv.setText(tv.getText() + text); } |
| //Empty the TextView of its contents private void emptyText() { TextView tv = (TextView)this.findViewById(R.id.textViewId); tv.setText(""); } } |
Setelah di run, hasilnya seperti gambar dibawah ini
_netoya_
Posted at 11:24AM May 24, 2010 by nety ozora in General | Comments[1]
thanks :p
Posted by latief on May 26, 2011 at 12:37 AM WIT #