| using Android.App; using Android.OS; using Android.Views; using Android.Widget; namespace MenuDemo { [Activity(Label = "@string/ApplicationName", MainLauncher = true, Icon = "@drawable/Icon")] public class MainActivity : Activity { protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); SetContentView(Resource.Layout.Main); var iv = FindViewById<ImageView>(Resource.Id.iv); iv.SetImageResource(Resource.Drawable.test); RegisterForContextMenu(iv); } //與一個活動關聯 public override bool OnCreateOptionsMenu(IMenu menu) { base.OnCreateOptionsMenu(menu); const int menuItemId = Menu.First; const int menuItemOrder = Menu.None; const int munuItemText = Resource.String.menuItem1; /* * 第一個參數:組值 * 第二個參數:菜單唯一標示 * 第三個參數:順序參數 * 第四個參數:文本 */ menu.Add(1, menuItemId, menuItemOrder, munuItemText); menu.Add(2, menuItemId + 10, menuItemOrder + 1, "菜單2"); menu.Add(2, menuItemId + 20, menuItemOrder + 2, "菜單3" ); var subMenu = menu.AddSubMenu(0, menuItemId + 30, menuItemOrder + 3, "子功能表" ); subMenu.SetHeaderIcon(Resource.Drawable.more); var subMenuItem1 = subMenu.Add(0, menuItemId + 40, menuItemOrder + 4,"子功能表-1" ); subMenuItem1.SetIcon(Resource.Drawable.more); var subMenuItem2 = subMenu.Add(0, menuItemId + 50, menuItemOrder + 5,"子功能表-2" ).SetCheckable(true); subMenuItem2.SetIcon(Resource.Drawable.blue); subMenu.Add(0, menuItemId + 60, menuItemOrder + 6, "子功能表-3" ).SetCheckable(true); return true; } public override bool OnOptionsItemSelected(IMenuItem item) { Toast.MakeText(this, "當前菜單編號" + item.ItemId, ToastLength.Long).Show(); return base.OnOptionsItemSelected(item); } public override void OnCreateContextMenu(IContextMenu menu, View v, IContextMenuContextMenuInfo menuInfo) { base.OnCreateContextMenu(menu, v, menuInfo); menu.SetHeaderTitle("操作功能表"); menu.SetHeaderIcon(Resource.Drawable.blue); menu.Add(0, Menu.First, Menu.None, "菜單1"); menu.Add(0, Menu.First+1,Menu.None, "菜單2").SetShortcut('2','B'); menu.Add(0, Menu.First + 2, Menu.None, "菜單3"); var subMenu = menu.AddSubMenu("子功能表"); subMenu.Add("子功能表選項"); } } } |