Вы находитесь на странице: 1из 6

Baru kali ini rasanya saya benar-benar gak punya rumah, gara-gara rumah bukde dimana saya

numpang sedang diperbaiki. Yang diperbaiki cuma pintu+kusennya dan kamar saya juga kena
imbasnya. Mau nangkring di rumah gak enak, debunya seliweran kemana-mana. Mau ngNet di
kampus, tempat cas-cas’an laptop di lantai 2 hilang (fitur baru setelah direnovasi kaleee yaw).
Mau ngNet di ITSolution juga gak enak gimana gitu rasanya. Coba saya punya pacar, pasti bisa
mengungsi di rumah pacar + sambil kencan (#haha). Jadilah saya keliling naik motor jupiter
kesayangan, tujuan akhirnya malah wisata kuliner ke tempat-tempat yang belum pernah saya
singgahi. Kebetulan juga duit jurnal dari kampus udah cair, lumayan ada buat hepi-hepi ngisi
perut. Nah, malam ini saya mau melanjutkan postingan kemarin tentang membuat options menu
di aplikasi android. Ada satu lagi fitur untuk menampilkan menu yang tersembunyai, yaitu
context menu. Cara menampilkannya cukup dengan menekan agak lama sebuah objek, hingga
muncul sebuah list menu (mirip seperti spinner). Kelebihan context menu ini ialah pilihan yang
ditampilkan bisa lebih dari 6, kalau options menu terbatas sampai 6 saja. Berikut cara
membuatnya.

1. Buat android project baru seperti gambar di bawah ini :


2. Hampir sama dengan options menu, context menu juga memerlukan sebuah layout terpisah
untuk menampilkan menu-menu yang sudah disisipkan di dalamnya. Buat folder menu di dalam
folder res. Strukturnya seperti gambar di bawah ini :
3. Buat file xml baru di dalam folder menu dengan nama con_menu.xml. Ketikkan kode layout
di bawah ini :

1 <menu xmlns:android="http://schemas.android.com/apk/res/android">
2 <item android:id="@+id/mn1"
3 android:title="Ubuntu" />
4 <item android:id="@+id/mn2"
5 android:title="Open Suse" />
6 <item android:id="@+id/mn3"
7 android:title="Mandriva" />
8 <item android:id="@+id/mn4"
9 android:title="Linux Mint" />
10 <item android:id="@+id/mn5"
11 android:title="Red Hat" />
12 <item android:id="@+id/mn6"
13 android:title="Fedora" />
14 <item android:id="@+id/mn7"
15 android:title="BlankOn" />
16 <item android:id="@+id/mn8"
17 android:title="Kubuntu" />
18 <item android:id="@+id/mn9"
19 android:title="Debian" />
20 <item android:id="@+id/mn10"
21 android:title="Mandrake" />
22 </menu>

4. Buka dan edit file main.xml dari folder layout. Disini objeknya saya menggunakan sebuah
gambar tux.

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


2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
3 android:layout_width="fill_parent"
4 android:layout_height="fill_parent"
5 android:orientation="vertical"
6 android:gravity="center" >
7 <ImageView android:id="@+id/press"
8 android:layout_width="wrap_content"
9 android:layout_height="wrap_content"
10 android:src="@drawable/gnome" />
11 </LinearLayout>

5. Yang terakhir, buka file ContextMenuActivity.java. Kalau dilihat sekilas, kodenya lumayan
mirip dengan options menu hanya beda di saat memanggil library-nya. Ketikkan kode untuk
activity di bawah ini :

1 public class ContextMenuActivity extends Activity {


2 public void onCreate(Bundle savedInstanceState) {
3 super.onCreate(savedInstanceState);
4 setContentView(R.layout.main);
5
6 ImageView tekan = (ImageView)findViewById(R.id.press);
7
8 registerForContextMenu(tekan);
9 }
10
public void onCreateContextMenu(ContextMenu menu, View v,
11
ContextMenuInfo menuInfo) {
12 super.onCreateContextMenu(menu, v, menuInfo);
13 MenuInflater inflater = getMenuInflater();
14 inflater.inflate(R.menu.con_menu, menu);
15 }
16
17 public boolean onContextItemSelected(MenuItem item) {
18 String isi = "Apakah ente pengguna ";
19 isi += item+"?";
20 tampil(isi);
21 return true;
22 }
23
24 private void tampil(String isi) {
25 Toast.makeText(this, isi, Toast.LENGTH_LONG).show();
26 }
27
28 }

6. Jalankan via emulator atau di debug ke hape android rekan-rekan. Hasilnya sama saja, kira-
kira seperti ini :

Context Menu ini ternyata tidak mendukung pemakaian icon. Hal itu ternyata bisa di-akali
dengan menggabungkannya dengan sebuah listview yang sudah diberikan kustom icon (cuma tau
konsepnya doang, belum sempat nyoba :p). Di postingan selanjutnya saya akan mencoba untuk
menggabungkan listview dengan context menu. Jadi ketika salah satu pilihan yang terdapat di
listview di sentuh agak lama, akan muncul pilihan menu dalam bentuk context menu. Mirip
seperti fitur di File Manager atau Root Explorer. OK deh, sekian dulu postingan saya malam ini,
semoga bisa bermanfaat untuk rekan-rekan

Вам также может понравиться