Yap, saya umpamakan anda sudah memiliki source code pada tutorial saya sebelumnya ya, sekarang kita akan tambahkan beberapa code , namun persiapkan terlebih dahulu beberapa gambar dengan ukuran 32x32 px ya, tentunya gambar tersebut akan kita gunakan sebagai icon menu. Kalian juga sudah paham kalau icon tersebut harus ditempatkan / dicopy ke folder drawable. Kurang lebih hasil akhirnya adalah sebagai berikut ini.
Ikuti langkah-langkah berikut ini :
Langkah 1
Buatlah sebuah file xml baru pada folder menu yang sudah kita buat sebelumnya , gunakan nama toolbox_menu.xml lalu ketikan code seperti ini
<?xml version="1.0" encoding="UTF-8" ?> <menu xmlns:android="http://schemas.android.com/apk/res/android" xmlns:myapp="http://schemas.android.com/apk/res-auto"> <item android:id="@+id/balas" android:icon="@drawable/balas" android:title="Balas" myapp:showAsAction="always"/> <item android:id="@+id/kamera" android:icon="@drawable/kamera" android:title="Kamera" myapp:showAsAction="always"/> <item android:id="@+id/galeri" android:icon="@drawable/galeri" android:title="Galeri" myapp:showAsAction="always"/> </menu>
Langkah 2
Bukalah file Main.axml lalu ubah code seperti berikut
<?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:app="http://schemas.android.com/apk/res-auto" android:layout_width="match_parent" android:layout_height="match_parent" android:background="#FEFEFE"> <android.support.v7.widget.Toolbar android:id="@+id/toolbar" android:layout_height="wrap_content" android:layout_width="match_parent" android:minHeight="?android:attr/actionBarSize" android:background="?android:attr/colorPrimary" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" android:layout_alignParentTop="true" /> <TextView android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="Dua Toolbar" android:textColor="#000" android:textSize="20sp" android:layout_centerInParent="true"/> <android.support.v7.widget.Toolbar android:id="@+id/toolbar_bottom" android:layout_height="wrap_content" android:layout_width="match_parent" android:minHeight="?android:attr/actionBarSize" android:background="?android:attr/colorPrimary" app:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar" app:popupTheme="@style/ThemeOverlay.AppCompat.Light" android:layout_alignParentBottom="true" /> </RelativeLayout>
Pada langkah diatas kita membuat sebuah relative layout terlebih dahulu, kemudian kita duplikat toolbar, untuk memposisikan toolbar pada posisi atas kita gunakan layout_alignParentTop="true" sedangkan untuk posisi bawah adalah layout_alignParentBottom="true"
Langkah 3 :
Bukalah kembali file MainActivity.cs lalu modifikasi codenya seperti berikut ini
using Android.App; using Android.Widget; using Android.OS; using System; using Android.Runtime; using Android.Content; using Android.Views; using Android.Support.V7.App; using SupportToolbar = Android.Support.V7.Widget.Toolbar; namespace tutorialToolbar { [Activity(Label = "tutorialToolbar", MainLauncher = true, Theme="@style/MyTheme")] public class MainActivity : ActionBarActivity { private SupportToolbar mToolbar; private SupportToolbar mStandAloneToolbar; protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); // Set our view from the "main" layout resource SetContentView(Resource.Layout.Main); mToolbar = FindViewById<SupportToolbar>(Resource.Id.toolbar); mStandAloneToolbar = FindViewById<SupportToolbar>(Resource.Id.toolbar_bottom); SetSupportActionBar(mToolbar); SupportActionBar.Title = "Hello Toolbar"; mStandAloneToolbar.InflateMenu(Resource.Menu.toolbox_menu); mStandAloneToolbar.MenuItemClick += MStandAloneToolbar_MenuItemClick; } void MStandAloneToolbar_MenuItemClick(object sender, SupportToolbar.MenuItemClickEventArgs e) { switch (e.Item.ItemId) { case Resource.Id.balas: Console.WriteLine("Balas"); break; case Resource.Id.kamera: Console.WriteLine("Kamera"); break; case Resource.Id.galeri: Console.WriteLine("Galery"); break; } } public override bool OnCreateOptionsMenu(IMenu menu) { MenuInflater.Inflate(Resource.Menu.action_menu, menu); return base.OnCreateOptionsMenu(menu); } } }
Agar mudah kita panggil SupportToolbar
using SupportToolbar = Android.Support.V7.Widget.Toolbar;
Lalu kita buat sebuah variable baru yang akan menampung menu toolbox_menu.xml yang sudah kita buat sebelumnya pada variable ini
private SupportToolbar mStandAloneToolbar;
kemudian sesuaikan dengan posisi toolbar dengan id yang sudah kita buat pada Main.axml
mStandAloneToolbar = FindViewById<SupportToolbar>(Resource.Id.toolbar_bottom);
Sekarang kita tinggal panggil toolbox_menu nya pada toolbar
mStandAloneToolbar.InflateMenu(Resource.Menu.toolbox_menu); mStandAloneToolbar.MenuItemClick += MStandAloneToolbar_MenuItemClick;
Untuk memanggil id dari setiap menu kita bisa menggunakan fungsi berikut :
void MStandAloneToolbar_MenuItemClick(object sender, SupportToolbar.MenuItemClickEventArgs e) { switch (e.Item.ItemId) { case Resource.Id.balas: Console.WriteLine("Balas"); break; case Resource.Id.kamera: Console.WriteLine("Kamera"); break; case Resource.Id.galeri: Console.WriteLine("Galery"); break; } }
Terimakasih
Ipung Purwono
https://www.facebook.com/ipungz.purwono
No comments:
Post a Comment
Mohon melakukan komentar dengan bahasa yang mudah dipahami, santun dan dengan bahasa yang baik.