public override void ViewDidLoad() { base.ViewDidLoad(); View.BackgroundColor = UIColor.Gray; // create the menu button var frame = new CGRect(MARGIN, View.Frame.Height - BUTTON_SIZE - MARGIN, BUTTON_SIZE, BUTTON_SIZE); menu = new SatelliteMenuButton(View, UIImage.FromBundle("Img/menu.png"), frame); menu.MenuItemClick += (_, args) => { new UIAlertView("", "Selected item: " + args.MenuItem.Name, null, "OK", null).Show(); }; // add the items menu.AddItems(new [] { new SatelliteMenuButtonItem(UIImage.FromBundle("Img/icon1.png"), "Search"), new SatelliteMenuButtonItem(UIImage.FromBundle("Img/icon2.png"), "Tag"), new SatelliteMenuButtonItem(UIImage.FromBundle("Img/icon3.png"), "Upload"), new SatelliteMenuButtonItem(UIImage.FromBundle("Img/icon4.png"), "Locate"), new SatelliteMenuButtonItem(UIImage.FromBundle("Img/icon5.png"), "Magic"), new SatelliteMenuButtonItem(UIImage.FromBundle("Img/icon6.png"), "Refresh") }); // add to the view View.Add(menu); }
SatelliteMenuButton CreateMenuButton() { int tag; var frame = new RectangleF(MARGIN, View.Frame.Height - MARGIN - BUTTON_SIZE, BUTTON_SIZE, BUTTON_SIZE); var menu = new SatelliteMenuButton(View, UIImage.FromFile("Img/menu.png"), new [] { new SatelliteMenuButtonItem(UIImage.FromFile("Img/icon1.png"), tag = 0, "Search"), new SatelliteMenuButtonItem(UIImage.FromFile("Img/icon2.png"), ++tag, "Tag"), new SatelliteMenuButtonItem(UIImage.FromFile("Img/icon3.png"), ++tag, "Upload"), new SatelliteMenuButtonItem(UIImage.FromFile("Img/icon4.png"), ++tag, "Locate"), new SatelliteMenuButtonItem(UIImage.FromFile("Img/icon5.png"), ++tag, "Magic"), new SatelliteMenuButtonItem(UIImage.FromFile("Img/icon6.png"), ++tag, "Refresh") }, frame); menu.MenuItemClick += (_, args) => { new UIAlertView("", "Selected item: " + args.MenuItem.Name, null, "OK", null).Show(); }; return(menu); }
SatelliteMenuButton CreateMenuButton () { int tag; var frame = new RectangleF (MARGIN, View.Frame.Height - MARGIN - BUTTON_SIZE, BUTTON_SIZE, BUTTON_SIZE); var menu = new SatelliteMenuButton (View, UIImage.FromFile ("Img/menu.png"), new [] { new SatelliteMenuButtonItem (UIImage.FromFile ("Img/icon1.png"), tag = 0, "Search"), new SatelliteMenuButtonItem (UIImage.FromFile ("Img/icon2.png"), ++tag, "Tag"), new SatelliteMenuButtonItem (UIImage.FromFile ("Img/icon3.png"), ++tag, "Upload"), new SatelliteMenuButtonItem (UIImage.FromFile ("Img/icon4.png"), ++tag, "Locate"), new SatelliteMenuButtonItem (UIImage.FromFile ("Img/icon5.png"), ++tag, "Magic"), new SatelliteMenuButtonItem (UIImage.FromFile ("Img/icon6.png"), ++tag, "Refresh") }, frame); menu.MenuItemClick += (_, args) => { new UIAlertView ("", "Selected item: " + args.MenuItem.Name, null, "OK", null).Show (); }; return menu; }
public override void ViewDidLoad() { base.ViewDidLoad (); View.BackgroundColor = UIColor.Gray; // create the menu button var frame = new CGRect (MARGIN, View.Frame.Height - BUTTON_SIZE - MARGIN, BUTTON_SIZE, BUTTON_SIZE); menu = new SatelliteMenuButton (View, UIImage.FromBundle ("Img/menu.png"), frame); menu.MenuItemClick += (_, args) => { new UIAlertView ("", "Selected item: " + args.MenuItem.Name, null, "OK", null).Show (); }; // add the items menu.AddItems(new []{ new SatelliteMenuButtonItem (UIImage.FromBundle ("Img/icon1.png"), "Search"), new SatelliteMenuButtonItem (UIImage.FromBundle ("Img/icon2.png"), "Tag"), new SatelliteMenuButtonItem (UIImage.FromBundle ("Img/icon3.png"), "Upload"), new SatelliteMenuButtonItem (UIImage.FromBundle ("Img/icon4.png"), "Locate"), new SatelliteMenuButtonItem (UIImage.FromBundle ("Img/icon5.png"), "Magic"), new SatelliteMenuButtonItem (UIImage.FromBundle ("Img/icon6.png"), "Refresh") }); // add to the view View.Add (menu); }
/// <summary> /// Create the satellite buttons of the main view and assign the events to them /// Sets also the events for every menu button /// </summary> /// <returns>The menu button.</returns> public override SatelliteMenuButton CreateMenuButton() { int tag; var frame = new CGRect(10, 156, 44, 44); button1 = new SatelliteMenuButtonItem(UIImage.FromFile("Images/NewPage.png"), tag = 0, "New"); button2 = new SatelliteMenuButtonItem(UIImage.FromFile("Images/EditPage.png"), ++tag, "Edit"); button3 = new SatelliteMenuButtonItem(UIImage.FromFile("Images/DeletePage.png"), ++tag, "Delete"); button4 = new SatelliteMenuButtonItem(UIImage.FromFile("Images/DownloadPage.png"), ++tag, "Offline"); button5 = new SatelliteMenuButtonItem(UIImage.FromFile("Images/SavePage.png"), ++tag, "Save"); // Reset the MenuButton if there is something inside of it if (menu == null) menu = new SatelliteMenuButton(this.ButtonContainerView, UIImage.FromFile("Image/menu.png"), frame); else if (menu.Items.Length != 5) { foreach (SatelliteMenuButtonItem item in menu.Items) { menu.RemoveItem(item); } } //var frame = new RectangleF (MARGIN, View.Frame.Height - MARGIN - BUTTON_SIZE, BUTTON_SIZE, BUTTON_SIZE); menu = new SatelliteMenuButton(this.ButtonContainerView, UIImage.FromFile("Images/menu.png"), new [] { button1, button2, button3, button4, button5 }, frame); menu.Radius = 120; menu.RotateToSide = false; menu.MenuItemClick += async (_, args) => { bool result = false; try { // Run the progressbar switch (args.MenuItem.Name) { case "New": hud = new MTMBProgressHUD(this.TabBarController.View){ DimBackground = true, LabelText = LocalString.GetString("SavingData") }; this.TabBarController.View.AddSubview(hud); hud.Show(true); Application._UIManager.BtnNewClick(); break; case "Edit": hud = new MTMBProgressHUD(this.TabBarController.View){ DimBackground = true, LabelText = LocalString.GetString("SavingData") }; this.TabBarController.View.AddSubview(hud); hud.Show(true); Application._UIManager.BtnEditClick(); break; case "Delete": hud = new MTMBProgressHUD(this.TabBarController.View){ DimBackground = true, LabelText = LocalString.GetString("SavingData") }; this.TabBarController.View.AddSubview(hud); hud.Show(true); result = await Application._UIManager.BtnDeleteClickAsync(); if (result == true) MessageBox.ShowSavedSuccessfully(this.TabBarController.View, LocalString.GetString("DeletedSuccessfully")); break; case "Offline": if (Application._user.NetworkStatus == DataAccessLayer.NetworkState.Disconnected) return; progress = 0; hud = new MTMBProgressHUD(this.TabBarController.View) { Mode = MBProgressHUDMode.DeterminateHorizontalBar, LabelText = LocalString.GetString("DownloadingOffline") }; this.TabBarController.View.AddSubview(hud); hud.Progress = 0; hud.Show(true, MyProgressTask); result = await Application._UIManager.BtnOfflineClickAsync(); hud.Progress = 0.99f; await System.Threading.Tasks.Task.Delay(500); hud.Progress = 1.1f; if (result == true) MessageBox.ShowSavedSuccessfully(this.TabBarController.View, LocalString.GetString("SavedOfflineSuccessfully")); break; case "Save": result = await Application._UIManager.BtnSaveClickAsync(); if (result == true) MessageBox.ShowSavedSuccessfully(this.TabBarController.View, LocalString.GetString("SavedSuccessfully")); break; default: break; } } catch (Exception ex) { DataAccessLayer.ExceptionWriter.WriteLogFile(ex); } finally { Console.WriteLine("finally entered"); // finallize the progressbar if (hud != null) { hud.RemoveFromSuperview(); hud = null; } Console.WriteLine("finally finished"); } }; this.ButtonContainerView.Add(menu); return menu; }
void AddSateliteMenu() { var image = UIImage.FromBundle("sun.png"); var yPos = View.Frame.Height - 100 - 10; var frame = new RectangleF(10, yPos, 100, 100); var items = new [] { new SatelliteMenuButtonItem(UIImage.FromBundle("moon.png"), 1, "About"), new SatelliteMenuButtonItem(UIImage.FromBundle("earth.png"), 2, "About"), new SatelliteMenuButtonItem(UIImage.FromBundle("mars.png"), 3, "About"), }; var button = new SatelliteMenuButton(View, image, items, frame); button.MenuItemClick += (_, args) => { Console.WriteLine("{0} was clicked!", args.MenuItem.Name); }; View.AddSubview(button); }
void AddMenu() { SatelliteMenuButtonItem[] menuItems; string connectedServices = (String.IsNullOrWhiteSpace(userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED)) ? string.Empty : userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED)); var menuImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "Menu.png"); var philipsHueImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "HueOff.png"); var soundImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "SoundOn.png"); var facebookImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "Facebook" + ((SLComposeViewController.IsAvailable(SLServiceKind.Twitter) == true) && (connectedServices.Contains("Facebook") == true) ? "Connected" : "Disconnected") + ".png"); var twitterImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "Twitter" + ((SLComposeViewController.IsAvailable(SLServiceKind.Twitter) == true) && (connectedServices.Contains("Twitter") == true) ? "Connected" : "Disconnected") + ".png"); var menuFrame = new RectangleF(2, (float)View.Window.Frame.Height - 50, 48, 48); if (String.IsNullOrWhiteSpace(userDefaults.StringForKey(SOUND_STATUS_KEY)) == false) { gameLayer.SoundOn = (userDefaults.StringForKey(SOUND_STATUS_KEY) == "On"); if ((gameLayer.SoundOn == true) && (ambientAudioWasPlaying == false)) { soundImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "SoundOn.png"); AVAudioSession.SharedInstance().SetActive(true, AVAudioSessionSetActiveOptions.NotifyOthersOnDeactivation); AVAudioSession.SharedInstance().SetCategory(AVAudioSessionCategory.SoloAmbient); } else { gameLayer.SoundOn = false; userDefaults.SetString("Off", SOUND_STATUS_KEY); soundImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "SoundOff.png"); AVAudioSession.SharedInstance().SetActive(false, AVAudioSessionSetActiveOptions.NotifyOthersOnDeactivation); AVAudioSession.SharedInstance().SetCategory(AVAudioSessionCategory.Ambient, AVAudioSessionCategoryOptions.MixWithOthers); } } if (String.IsNullOrWhiteSpace(userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED)) == true) { userDefaults.SetString(connectedServices, SOCIAL_NETWORKS_CONNECTED); } menuImage = menuImage.Scale(new CGSize(96, 96)); philipsHueImage = philipsHueImage.Scale(new CGSize(96, 96)); soundImage = soundImage.Scale(new CGSize(96, 96)); facebookImage = facebookImage.Scale(new CGSize(96, 96)); twitterImage = twitterImage.Scale(new CGSize(96, 96)); menuItems = new[] { new SatelliteMenuButtonItem(philipsHueImage, 1, "Philips Hue Off"), new SatelliteMenuButtonItem(soundImage, 2, "Sound " + (String.IsNullOrWhiteSpace(userDefaults.StringForKey(SOUND_STATUS_KEY)) ? "On" : userDefaults.StringForKey(SOUND_STATUS_KEY))), new SatelliteMenuButtonItem(facebookImage, 3, "Facebook " + ((SLComposeViewController.IsAvailable(SLServiceKind.Twitter) == true) && (connectedServices.Contains("Facebook") == true) ? "Connected" : "Disconnected")), new SatelliteMenuButtonItem(twitterImage, 4, "Twitter " + ((SLComposeViewController.IsAvailable(SLServiceKind.Facebook) == true) && (connectedServices.Contains("Twitter") == true) ? "Connected" : "Disconnected")) }; satelliteMenu = new SatelliteMenuButton(View, menuImage, menuItems, menuFrame); satelliteMenu.Alpha = 0.85f; satelliteMenu.CloseItemsOnClick = true; satelliteMenu.TouchUpInside += (sender, e) => { if (gameLayer.GamePaused == false) { gameLayer.GamePaused = true; } else { gameLayer.GamePaused = false; } }; satelliteMenu.MenuItemClick += (sender, args) => { if (args.MenuItem.Name == "Philips Hue On") { ControlMenu("Hide"); selectorTableView.Hidden = false; } else if (args.MenuItem.Name == "Philips Hue Off") { ControlMenu("Hide"); ChangePhilipsHueStatus(); } else if (args.MenuItem.Name == "Sound On") { gameLayer.SoundOn = false; args.MenuItem.Name = "Sound Off"; args.MenuItem.ItemImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "SoundOff.png"); userDefaults.SetString("Off", SOUND_STATUS_KEY); if (ambientAudioWasPlaying == true) { UIAlertController gameAudioAlert = UIAlertController.Create("Game Audio", "Would you like to resume the audio that was playing before you started the game?", UIAlertControllerStyle.Alert); gameAudioAlert.AddAction(UIAlertAction.Create("OK", UIAlertActionStyle.Default, (connectionOK) => { AVAudioSession.SharedInstance().SetActive(false, AVAudioSessionSetActiveOptions.NotifyOthersOnDeactivation); AVAudioSession.SharedInstance().SetCategory(AVAudioSessionCategory.Ambient, AVAudioSessionCategoryOptions.MixWithOthers); })); gameAudioAlert.AddAction(UIAlertAction.Create("Cancel", UIAlertActionStyle.Default, (connectionCancel) => { AVAudioSession.SharedInstance().SetCategory(AVAudioSessionCategory.Ambient, AVAudioSessionCategoryOptions.MixWithOthers); })); PresentViewController(gameAudioAlert, true, null); } else { AVAudioSession.SharedInstance().SetCategory(AVAudioSessionCategory.Ambient, AVAudioSessionCategoryOptions.MixWithOthers); } } else if (args.MenuItem.Name == "Sound Off") { gameLayer.SoundOn = true; args.MenuItem.Name = "Sound On"; args.MenuItem.ItemImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "SoundOn.png"); userDefaults.SetString("On", SOUND_STATUS_KEY); AVAudioSession.SharedInstance().SetActive(true, AVAudioSessionSetActiveOptions.NotifyOthersOnDeactivation); AVAudioSession.SharedInstance().SetCategory(AVAudioSessionCategory.SoloAmbient); } else if (args.MenuItem.Name == "Twitter Disconnected") { if (SLComposeViewController.IsAvailable(SLServiceKind.Twitter) == false) { if (UIApplication.SharedApplication.CanOpenUrl(new NSUrl("prefs:root=General&path=TWITTER")) == true) { UIApplication.SharedApplication.OpenUrl(new NSUrl("prefs:root=General&path=TWITTER")); } else { UIApplication.SharedApplication.OpenUrl(new NSUrl("App-Prefs:root=TWITTER")); } } else { args.MenuItem.Name = "Twitter Connected"; args.MenuItem.ItemImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "TwitterConnected.png"); userDefaults.SetString(userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED) + ",Twitter", SOCIAL_NETWORKS_CONNECTED); } } else if (args.MenuItem.Name == "Twitter Connected") { args.MenuItem.Name = "Twitter Disconnected"; args.MenuItem.ItemImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "TwitterDisconnected.png"); userDefaults.SetString(userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED).Replace("Twitter", string.Empty).Trim(','), SOCIAL_NETWORKS_CONNECTED); } else if (args.MenuItem.Name == "Facebook Disconnected") { if (SLComposeViewController.IsAvailable(SLServiceKind.Twitter) == false) { if (UIApplication.SharedApplication.CanOpenUrl(new NSUrl("prefs:root=General&path=FACEBOOK")) == true) { UIApplication.SharedApplication.OpenUrl(new NSUrl("prefs:root=General&path=FACEBOOK")); } else { UIApplication.SharedApplication.OpenUrl(new NSUrl("App-Prefs:root=FACEBOOK")); } } else { args.MenuItem.Name = "Facebook Connected"; args.MenuItem.ItemImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "FacebookConnected.png"); userDefaults.SetString(userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED) + ",Facebook", SOCIAL_NETWORKS_CONNECTED); } } else if (args.MenuItem.Name == "Facebook Connected") { args.MenuItem.Name = "Facebook Disconnected"; args.MenuItem.ItemImage = UIImage.FromFile(IMAGES_FOLDER + currentMod + "/" + "FacebookDisconnected.png"); userDefaults.SetString(userDefaults.StringForKey(SOCIAL_NETWORKS_CONNECTED).Replace("Facebook", string.Empty).Trim(','), SOCIAL_NETWORKS_CONNECTED); } }; View.AddSubview(satelliteMenu); }
public void InitSateliteMenu() { var image = MenuIcon.MakeImage (); var yPos = View.Frame.Height - image.Size.Height - 10; var frame = new RectangleF (10, yPos, image.Size.Width, image.Size.Height); var items = GetMenuItems (); SateliteButton = new SatelliteMenuButton (View, image, items, frame); SateliteButton.CloseItemsOnClick = false; SateliteButton.MenuItemClick += (_, args) => { Console.WriteLine ("{0} was clicked!", args.MenuItem.Name); if(args.MenuItem.Name == "Scanner"){ Scanner scanner = new Scanner(this); scanner.Scannit(); } if(args.MenuItem.Name == "Items"){ // if(UserInterfaceIdiomIsPhone){ ItemCatalogue cat = new ItemCatalogue(); //PresentViewControllerAsync(cat, true); ancestor.NavigationController.PushViewController(cat,true); // }else{ // ItemMasterView itemMaster = new ItemMasterView(); // ancestor.NavigationController.PushViewController(itemMaster,true); // } } if(args.MenuItem.Name == "Big Items"){ // if(UserInterfaceIdiomIsPhone){ BigItemsScreen biggies = new BigItemsScreen(); ancestor.NavigationController.PushViewController(biggies, true); // }else{ // BigItemMasterView bigMaster = new BigItemMasterView(); // ancestor.NavigationController.PushViewController(bigMaster,true); // } } if(args.MenuItem.Name == "Containers"){ // if(UserInterfaceIdiomIsPhone){ ContainerScreen containers = new ContainerScreen(); ancestor.NavigationController.PushViewController(containers,true); // }else{ // ContainerMasterView containerMaster = new ContainerMasterView(); // ancestor.NavigationController.PushViewController(containerMaster,true); // } } if(args.MenuItem.Name == "Gallery"){ GalleryViewController tagGallery = new GalleryViewController(); ancestor.NavigationController.PushViewController(tagGallery,true); } if(args.MenuItem.Name == "Locations"){ // if(UserInterfaceIdiomIsPhone){ StorageCatalogue sc = new StorageCatalogue(); ancestor.NavigationController.PushViewController(sc,true); // }else{ // LagerMasterView lmv = new LagerMasterView(); // ancestor.NavigationController.PushViewController(lmv,true); // } } if(args.MenuItem.Name == "Dashboard"){ DashBoardViewController dash = new DashBoardViewController(); ancestor.NavigationController.PushViewController(dash,true); } }; this.View.BackgroundColor = UIColor.Clear; View.AddSubview (SateliteButton); View.UserInteractionEnabled = true; }