public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();

			webView = new UIWebView (new RectangleF(0, (_addCancelButton) ? navigationBarHeight : 0, View.Frame.Width, (_addCancelButton) ? View.Frame.Height - navigationBarHeight : View.Frame.Height));
			webView.Delegate = new WebViewDelegate(RequestStarted, RequestFinished);

			if (!_addCancelButton) {
				this.View.AddSubview (webView);
			} else {
				var cancelButton = new UIBarButtonItem (UIBarButtonSystemItem.Cancel);
				cancelButton.Clicked += (object sender, EventArgs e) => {
					_cancelled();
					this.DismissViewController(true, null);
				};

				var navigationItem = new UINavigationItem {
					LeftBarButtonItem = cancelButton
				};

				navigationBar = new UINavigationBar (new RectangleF (0, 0, View.Frame.Width, navigationBarHeight));
				navigationBar.PushNavigationItem (navigationItem, false);

				this.View.AddSubviews (navigationBar, webView);
			}
		}
示例#2
0
 void ReleaseDesignerOutlets()
 {
     if (BottomMenu != null)
     {
         BottomMenu.Dispose();
         BottomMenu = null;
     }
     if (btnComments != null)
     {
         btnComments.Dispose();
         btnComments = null;
     }
     if (btnRates != null)
     {
         btnRates.Dispose();
         btnRates = null;
     }
     if (btnStatistic != null)
     {
         btnStatistic.Dispose();
         btnStatistic = null;
     }
     if (MainBackground != null)
     {
         MainBackground.Dispose();
         MainBackground = null;
     }
     if (NavigationBar != null)
     {
         NavigationBar.Dispose();
         NavigationBar = null;
     }
 }
        public bool ShouldPushItem(UINavigationBar navigationBar, UINavigationItem item)
        {
            var v = navigationBar as NavigationBar;

            if (v != null)
            {
                item.BackButton().AddTarget(this, new Selector("handleBackButton"), UIControlEvent.TouchUpInside);
                item.BackButton().Image = v.BackButtonImage;


                var c = item.LeftViews();
                if (c != null)
                {
                    c.Add(item.BackButton());
                    item.SetLeftViews(c);
                }
                else
                {
                    item.SetLeftViews(new List <UIView>
                    {
                        item.BackButton()
                    });
                }
                v.layoutNavigationItem(item);
            }

            return(true);
        }
示例#4
0
        public Composer() : base(null, null)
        {
            Title = "New Comment";

            // Navigation Bar
            _navigationBar = new UINavigationBar(new RectangleF(0, 0, UIScreen.MainScreen.Bounds.Width, 44))
            {
                AutoresizingMask = UIViewAutoresizing.FlexibleWidth, AutosizesSubviews = true
            };
            _navItem = new UINavigationItem("");
            var close = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Cancel, CloseComposer));

            _navItem.LeftBarButtonItem = close;
            SendItem = new UIBarButtonItem(NavigationButton.Create(Images.Buttons.Save, PostCallback));
            _navItem.RightBarButtonItem = SendItem;

            _navigationBar.PushNavigationItem(_navItem, false);

            // Composer
            _composerView = new ComposerView(ComputeComposerSize(RectangleF.Empty), this);

            // Add the views
            View.AddSubview(_composerView);
            View.AddSubview(_navigationBar);
        }
        public bool ShouldPopItem(UINavigationBar navigationBar, UINavigationItem item)
        {
            // this means the pop is already done, nothing we can do
            if (ViewControllers.Length < NavigationBar.Items.Length)
            {
                return(true);
            }

            bool allowPop = ShouldPop();

            if (allowPop)
            {
                // Do not remove, wonky behavior on some versions of iOS if you dont dispatch
                CoreFoundation.DispatchQueue.MainQueue.DispatchAsync(() =>
                {
                    _popCompletionTask = new TaskCompletionSource <bool>();
                    SendPoppedOnCompletion(_popCompletionTask.Task);
                    PopViewController(true);
                });
            }
            else
            {
                for (int i = 0; i < NavigationBar.Subviews.Length; i++)
                {
                    var child = NavigationBar.Subviews[i];
                    if (child.Alpha != 1)
                    {
                        UIView.Animate(.2f, () => child.Alpha = 1);
                    }
                }
            }

            return(false);
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();
            webView.ShouldStartLoad = delegate(UIWebView webViewParam, NSUrlRequest request, UIWebViewNavigationType navigationType) {
                // view links in a new 'webbrowser' window like session & twitter
                if (navigationType == UIWebViewNavigationType.LinkClicked) {
                    this.NavigationController.PushViewController (new WebViewController (request), true);
                    return false;
                }
                return true;
            };

            navBar = new UINavigationBar (new RectangleF (0, 0, 320, 44));
            var bbi = new UIBarButtonItem(UIImage.FromBundle ("Images/slideout"), UIBarButtonItemStyle.Plain, (sender, e) => {
                AppDelegate.Current.FlyoutNavigation.ToggleMenu();
            });
            var item = new UINavigationItem ("About MonkeySpace");
            item.LeftBarButtonItem = bbi;
            var items = new UINavigationItem[] {
                item
            };
            navBar.SetItems (items, false);

            View.Add (navBar);
        }
示例#7
0
        Composer()
            : base(null, null)
        {
            // Navigation Bar
            navigationBar = new UINavigationBar (new RectangleF (0, 0, 320, 44));
            navItem = new UINavigationItem ("");
            var close = new UIBarButtonItem (Locale.GetText ("Close"), UIBarButtonItemStyle.Plain, CloseComposer);
            navItem.LeftBarButtonItem = close;
            sendItem = new UIBarButtonItem (Locale.GetText ("Send"), UIBarButtonItemStyle.Plain, PostCallback);
            navItem.RightBarButtonItem = sendItem;

            navigationBar.PushNavigationItem (navItem, false);

            // Composer
            composerView = new ComposerView (ComputeComposerSize (RectangleF.Empty), this, CameraTapped);
            composerView.LookupUserRequested += delegate {
                PresentModalViewController (new UserSelector (userName => {
                    composerView.Text += ("@" + userName + " ");
                }), true);
            };

            // Add the views
            NSNotificationCenter.DefaultCenter.AddObserver ("UIKeyboardWillShowNotification", KeyboardWillShow);

            View.AddSubview (composerView);
            View.AddSubview (navigationBar);
        }
示例#8
0
        public NotePanel(UIViewController parentVC, Book book, CGRect frame) : base(frame)
        {
            this.BackgroundColor = eBriefingAppearance.Gray5;
            this.parentVC        = parentVC;
            this.book            = book;

            this.AutoresizingMask = UIViewAutoresizing.FlexibleLeftMargin | UIViewAutoresizing.FlexibleHeight;

            // navBar
            UINavigationBar navBar = new UINavigationBar();

            navBar.Frame = new CGRect(0, 0, this.Frame.Width, 44);
            this.AddSubview(navBar);

            // closeButton
            UIBarButtonItem closeButton = new UIBarButtonItem("Close", UIBarButtonItemStyle.Plain, HandleCloseTouchUpInside);

            closeButton.TintColor = eBriefingAppearance.BlueColor;

            UINavigationItem item = new UINavigationItem();

            item.RightBarButtonItem = closeButton;
            item.Title = "Notes";
            navBar.PushNavigationItem(item, false);

            UIStringAttributes stringAttributes = new UIStringAttributes();

            stringAttributes.StrokeColor = eBriefingAppearance.Gray3;
            stringAttributes.Font        = eBriefingAppearance.ThemeRegularFont(17f);
            navBar.TitleTextAttributes   = stringAttributes;
        }
        public override void ViewWillAppear(bool animated)
        {
            base.ViewWillAppear(animated);
            var LeftNavList  = new List <UIBarButtonItem>();
            var RightNavList = new List <UIBarButtonItem>();
            var ToolbarList  = new List <ToolbarItem>();

            UINavigationItem navigationItem = NavigationController.TopViewController.NavigationItem;

            // Add to new list for sorting
            foreach (ToolbarItem itm in Element.ToolbarItems)
            {
                ToolbarList.Add(itm);
            }

            // Sort the list
            ToolbarList.Sort((i1, i2) => { return(i1.Priority > i2.Priority ? -1 : 1); });

            foreach (ToolbarItem itm in ToolbarList)
            {
                if (itm.Priority < 0)
                {
                    LeftNavList.Add(itm.ToUIBarButtonItem());
                }
                else
                {
                    RightNavList.Add(itm.ToUIBarButtonItem());
                }
            }

            navigationItem.SetLeftBarButtonItems(LeftNavList.ToArray(), false);
            navigationItem.SetRightBarButtonItems(RightNavList.ToArray(), false);
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var clothesSource = new ClothesSource(this);

            tableView.Source = clothesSource;


            var sdc = searchDisplayController;

            sdc.SearchResultsSource = clothesSource;
            sdc.SearchResultsTableView.RowHeight = tableView.RowHeight;
            sdc.SearchBar.TextChanged           += (sender, e) =>
            {
                string text = e.SearchText.ToLower();
                _filteredClothesItems = _clothesItems.Where(ci => IosLocalizator.Translate($"CLOTHES_{ci.Name.ToUpper().Replace("-", "_")}").ToLower().Contains(text)).ToList();
            };

            //init navBar items
            _navigationItem       = navBar.Items[0];
            _navigationItem.Title = _brandService.Get(AppSettings.SelectedBrandId).Name;
            _editButton           = _navigationItem.RightBarButtonItem;
            _saveButton           = new UIBarButtonItem(UIBarButtonSystemItem.Save, (s, e) => Save());
            // Perform any additional setup after loading the view, typically from a nib.
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            this.NavigationItem.Title = "Choose a currency";

            UINavigationBar navBar = new UINavigationBar();

            navBar.Frame = new CGRect(0, 0, this.View.Bounds.Width, 50);

            navBar.BarStyle = UIBarStyle.Default;


            UIBarButtonItem cancelButton = new UIBarButtonItem("Cancel", UIBarButtonItemStyle.Bordered, (sender, e) => {
                this.DismissViewController(true, () =>
                {
                    this.Dispose();
                });
            });

            UINavigationItem cancel = new UINavigationItem();

            cancel.SetLeftBarButtonItem(cancelButton, true);

            navBar.Items = new UINavigationItem[] { cancel };
            this.View.AddSubview(navBar);
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            // Perform any additional setup after loading the view, typically from a nib.

            UINavigationItem n = this.NavigationItem;

            n.Title = NSBundle.MainBundle.LocalizedString("Homepwner", "Application Name");

            // Create a new bar button item that will send
            // addNewItem to ItemsViewController
            UIBarButtonItem bbi = new UIBarButtonItem(UIBarButtonSystemItem.Add, addNewItem);

            // Set this bar button item as the right item in the navigationItem
            n.RightBarButtonItem = bbi;
            n.LeftBarButtonItem  = this.EditButtonItem;

            BNRItemStore.loadItemsFromDatabase();
            // HomepwnerItemCell
            UINib nib = UINib.FromName("HomepwnerItemCell", null);

            // Register this NIB which contains the cell
            TableView.RegisterNibForCellReuse(nib, "HomepwnerItemCell");
        }
示例#13
0
            public override void ViewDidLoad()
            {
                base.ViewDidLoad();

                UIImageView backgroundView = new UIImageView(this.View.Bounds);

                backgroundView.Image = new UIImage("bg.png");
                this.View.AddSubview(backgroundView);

                UINavigationBar  navBar         = new UINavigationBar(new CGRect(0, 0, this.View.Frame.Size.Width, 64));
                UINavigationItem navItem        = new UINavigationItem("SideDrawer");
                UIBarButtonItem  showSideDrawer = new UIBarButtonItem(new UIImage("menu.png"), UIBarButtonItemStyle.Plain, this, new Selector("ShowSideDrawer"));

                navItem.LeftBarButtonItem = showSideDrawer;
                navBar.Items = new UINavigationItem[] { navItem };
                this.View.AddSubview(navBar);

                primarySection = new TKSideDrawerSection("Controls");
                primarySection.AddItem("AppFeedback");
                primarySection.AddItem("Calendar");
                primarySection.AddItem("Chart");
                primarySection.AddItem("DataSource");
                primarySection.AddItem("ListView");
                primarySection.AddItem("SideDrawer");

                labelsSection = new TKSideDrawerSection("Help");
                labelsSection.AddItem("Support");
                labelsSection.AddItem("Documentation");
                labelsSection.AddItem("Feedback");

                this.SideDrawer = TKSideDrawer.FindSideDrawer(this);
                SideDrawer.AddSection(primarySection);
                SideDrawer.AddSection(labelsSection);
            }
示例#14
0
        public static void SetTwoLineTitleView(UINavigationItem item, string titleText, string subtitleText)
        {
            if (string.IsNullOrEmpty(titleText) || string.IsNullOrEmpty(subtitleText))
            {
                return;
            }

            var navigation = Components.Instance.NavController;

            UIView titleview = new UIView();

            titleview.Frame = new CoreGraphics.CGRect(0f, 0f, navigation.NavigationBar.Frame.Width - 130f, navigation.NavigationBar.Frame.Height);

            UILabel first = new UILabel();

            first.Frame = new CoreGraphics.CGRect(0f, 0f, titleview.Bounds.Width, titleview.Bounds.Height * 0.6f);
            first.Text  = titleText;

            UILabel second = new UILabel();

            second.Frame = new CoreGraphics.CGRect(0f, titleview.Bounds.Height * 0.6f, titleview.Bounds.Width, titleview.Bounds.Height * 0.4f);
            second.Text  = subtitleText;

            first.TextColor = second.TextColor = UIColor.White;

            first.TextAlignment = second.TextAlignment = UITextAlignment.Left;

            titleview.AddSubview(first);
            titleview.AddSubview(second);

            item.TitleView = titleview;
        }
示例#15
0
        Composer() : base(null, null)
        {
            // Navigation Bar
            navigationBar = new UINavigationBar(new RectangleF(0, 0, 320, 44));
            navItem       = new UINavigationItem("");
            var close = new UIBarButtonItem(Locale.GetText("Close"), UIBarButtonItemStyle.Plain, CloseComposer);

            navItem.LeftBarButtonItem = close;
            sendItem = new UIBarButtonItem(Locale.GetText("Send"), UIBarButtonItemStyle.Plain, PostCallback);
            navItem.RightBarButtonItem = sendItem;

            navigationBar.PushNavigationItem(navItem, false);

            // Composer
            composerView = new ComposerView(ComputeComposerSize(RectangleF.Empty), this, CameraTapped);
            composerView.LookupUserRequested += delegate {
                PresentModalViewController(new UserSelector(userName => {
                    composerView.Text += ("@" + userName + " ");
                }), true);
            };

            // Add the views
            NSNotificationCenter.DefaultCenter.AddObserver("UIKeyboardWillShowNotification", KeyboardWillShow);

            View.AddSubview(composerView);
            View.AddSubview(navigationBar);
        }
示例#16
0
		public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();
			NavBar=new UINavigationBar(new CoreGraphics.CGRect (0, 0, pview.uvWidth, 44));
			NavBar.BackgroundColor = UIColor.Red;
//			UIBarButtonItem bbitemCancel = new UIBarButtonItem (UIBarButtonSystemItem.Cancel, CancelButtonClicked);
			UIButton btnCancel = new UIButton (new CGRect (0, 0, 80, 30));
			btnCancel.SetTitleColor (UIColor.Blue, UIControlState.Normal);
			btnCancel.SetTitle ("Cancel", UIControlState.Normal);
			btnCancel.TouchUpInside += (object sender, EventArgs e) => {
				pview.popover.Dismiss(false);
			};
			UIBarButtonItem bbitemCancel = new UIBarButtonItem (btnCancel);

//			UIBarButtonItem bbitemDone = new UIBarButtonItem (UIBarButtonSystemItem.Done, DoneButtonClicked);
			UIButton btnDone = new UIButton (new CGRect (0, 0, 80, 30));
			btnDone.SetTitleColor (UIColor.Blue, UIControlState.Normal);
			btnDone.SetTitle ("Done", UIControlState.Normal);
			btnDone.TouchUpInside += (object sender, EventArgs e) => {
				pview.DismissPopOver ();
			};
			UIBarButtonItem bbitemDone = new UIBarButtonItem (btnDone);

			UINavigationItem navgitem = new UINavigationItem ("Select");
			navgitem.SetLeftBarButtonItem(bbitemCancel,true);
			navgitem.SetRightBarButtonItem (bbitemDone, true);
			NavBar.PushNavigationItem(navgitem,true);
			this.View.Add (NavBar);
			searchBar=new UISearchBar(new CoreGraphics.CGRect (0, 44, pview.uvWidth, 44));
			this.View.Add(searchBar);
			rvc = new RootViewController (RootData,pview);
			rvc.View.Frame = new CoreGraphics.CGRect (0, 88, pview.uvWidth, 600);
			this.subview.SetRootview(rvc);
			this.View.Add (rvc.View);
		}
 /**
  * Prepare the titleView.
  * - Parameter item: A UINavigationItem to layout.
  */
 private void prepareTitleView(UINavigationItem item)
 {
     if (item.TitleView == null)
     {
         item.TitleView = new UIView(CGRect.Empty);
     }
 }
示例#18
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();

            _container = new UIView ();
            View.AddSubview (_container);
            _container.Frame = _container.Superview.Bounds;
            _container.BackgroundColor = UIColor.Gray;

            _imageView = new UIImageView ();
            _container.AddSubview (_imageView);

            _navigationBar = new UINavigationBar ();
            _navigationBar.Frame = new RectangleF (0f, 0f, 320f, 55f);
            _navigationBar.BarStyle = UIBarStyle.Default;

            UINavigationItem navItems = new UINavigationItem { LeftBarButtonItem = new UIBarButtonItem("Меню", UIBarButtonItemStyle.Plain, OnMenuButtonPressed) };
            _navigationBar.Items = new UINavigationItem[]
            {
                navItems
            };
            _container.AddSubview(_navigationBar);

            _sideBarMediator = new SideBarMediator(this, _container, _sideBar, 260f);

            SetImage(UIImage.FromFile("wishlist.png"));
        }
示例#19
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad();
            webView.ShouldStartLoad = delegate(UIWebView webViewParam, NSUrlRequest request, UIWebViewNavigationType navigationType) {
                // view links in a new 'webbrowser' window like session & twitter
                if (navigationType == UIWebViewNavigationType.LinkClicked)
                {
                    this.NavigationController.PushViewController(new WebViewController(request), true);
                    return(false);
                }
                return(true);
            };

            navBar = new UINavigationBar(new RectangleF(0, 0, 320, 44));
            var bbi = new UIBarButtonItem(UIImage.FromBundle("Images/slideout"), UIBarButtonItemStyle.Plain, (sender, e) => {
                AppDelegate.Current.FlyoutNavigation.ToggleMenu();
            });
            var item = new UINavigationItem("About MonkeySpace");

            item.LeftBarButtonItem = bbi;
            var items = new UINavigationItem[] {
                item
            };

            navBar.SetItems(items, false);

            View.Add(navBar);
        }
        private void SetupTransparentNavigationBar(IList <ToolbarItem> toolbarItems)
        {
            var navBar = new UINavigationBar(new CGRect(0, 0, this.View.Bounds.Width, 60))
            {
                Translucent = true
            };

            navBar.SetBackgroundImage(new UIImage(), UIBarMetrics.Default);
            navBar.ShadowImage = new UIImage();

            _navbarItem = new UINavigationItem {
                LeftBarButtonItems = new UIBarButtonItem[] { }
            };
            var leftNativeButtons  = new List <Tuple <ToolbarItem, UIBarButtonItem> >();
            var rightNativeButtons = new List <Tuple <ToolbarItem, UIBarButtonItem> >();

            _navbarItem.TitleView = BuildSubTitleView(NavigationBarPage);
            CreateUIBarButtonFromToolBarItems(leftNativeButtons, rightNativeButtons, toolbarItems);

            _navbarItem.RightBarButtonItems = SetCustomFontsToToolBars(rightNativeButtons,
                                                                       NavigationBarPage.RightToolbarItemFont, NavigationBarPage.RightToolbarItemVisible);

            _navbarItem.LeftBarButtonItems = SetCustomFontsToToolBars(leftNativeButtons,
                                                                      NavigationBarPage.LeftToolbarItemFont, NavigationBarPage.LeftToolbarItemVisible);

            if (NavigationBarPage.BarTintColor != Color.Default)
            {
                navBar.TintColor = NavigationBarPage.BarTintColor.ToUIColor();
            }

            navBar.Items = new[] { _navbarItem };
            this.View.AddSubview(navBar);
        }
        /// <summary>
        /// Sets the back button.
        /// </summary>
        /// <param name="navigationItem">The navigation item.</param>
        public static void SetBackButton(UINavigationItem navigationItem)
        {
            var barItem = new UIBarButtonItem();

            barItem.Title = string.Empty;
            navigationItem.BackBarButtonItem = barItem;
        }
        public virtual void ViewWillAppear(Action <bool> baseViewWillAppear, bool animated)
        {
            baseViewWillAppear(animated);

            var viewController = ViewController;

            if (viewController != null && !_isAppeared)
            {
                if (viewController.View != null)
                {
                    ParentObserver.Raise(viewController.View, true);
                }
                UINavigationItem navigationItem = viewController.NavigationItem;
                if (navigationItem != null)
                {
                    SetParent(navigationItem, viewController);
                    SetParent(navigationItem.LeftBarButtonItem, viewController);
                    SetParent(navigationItem.LeftBarButtonItems, viewController);
                    SetParent(navigationItem.RightBarButtonItem, viewController);
                    SetParent(navigationItem.RightBarButtonItems, viewController);
                }
                SetParent(viewController.EditButtonItem, viewController);
                SetParent(viewController.ToolbarItems, viewController);
                var dialogViewController = viewController as DialogViewController;
                if (dialogViewController != null)
                {
                    SetParent(dialogViewController.Root, viewController);
                }
                var viewControllers = viewController.ChildViewControllers;
                foreach (var controller in viewControllers)
                {
                    controller.TryRaiseAttachedEvent(AttachedMembers.Object.Parent);
                }

                var tabBarController = viewController as UITabBarController;
                if (tabBarController == null)
                {
                    var splitViewController = viewController as UISplitViewController;
                    viewControllers = splitViewController == null ? null : splitViewController.ViewControllers;
                }
                else
                {
                    viewControllers = tabBarController.ViewControllers;
                }

                if (viewControllers != null)
                {
                    foreach (var controller in viewControllers)
                    {
                        controller.TryRaiseAttachedEvent(AttachedMembers.Object.Parent);
                        PlatformExtensions.SetHasState(controller, false);
                    }
                }

                viewController.TryRaiseAttachedEvent(AttachedMembers.Object.Parent);
                _isAppeared = true;
            }
            Raise(ViewWillAppearHandler, animated);
        }
示例#23
0
        public override UIViewController PopViewController(bool animated)
        {
            var result = base.PopViewController(animated);

            _poped = NavBar.PopNavigationItem(animated);

            return(result);
        }
 protected virtual void OnRendererSet()
 {
     NavigationItem = ViewController.NavigationItem;
     if (!Forms.IsiOS11OrNewer)
     {
         ViewController.AutomaticallyAdjustsScrollViewInsets = false;
     }
 }
示例#25
0
        public ToolBarBackView(UINavigationItem navigationItem, UINavigationBar navigationBar)
        {
            _navigationItem = navigationItem;
            _navigationBar  = navigationBar;

            _backButton = new UIBarButtonItem(new UIImage(), UIBarButtonItemStyle.Plain, (sender, e) => { Presenter.BackClick(); });
            _navigationItem.SetLeftBarButtonItem(_backButton, true);
        }
示例#26
0
 public static void AddTitleView(this UINavigationItem navigationItem, UIView view)
 {
     view.TranslatesAutoresizingMaskIntoConstraints = false;
     view.LayoutIfNeeded();
     view.SizeToFit();
     view.TranslatesAutoresizingMaskIntoConstraints = true;
     navigationItem.TitleView = view;
 }
示例#27
0
 protected virtual bool ShouldPopItem(UINavigationBar navigationBar, UINavigationItem item)
 {
     if (ViewControllers.Length < navigationBar.Items.Length)
     {
         return(true);
     }
     PopViewController(true);
     return(false);
 }
示例#28
0
        public static NavigationItem NavigationItem(this UINavigationItem view)
        {
            var v = MaterialObjC.AssociatedObject(view.Handle, sMaterialAssociatedObjectNavigationItemKey.Handle, () =>
            {
                return(new NavigationItem().Handle);
            });

            return(ObjCRuntime.Runtime.GetNSObject(v) as NavigationItem);
        }
示例#29
0
        protected virtual void OnRendererSet()
        {
            NavigationItem = ViewController.NavigationItem;

            if (!(OperatingSystem.IsIOSVersionAtLeast(11) || OperatingSystem.IsTvOSVersionAtLeast(11)))
            {
                ViewController.AutomaticallyAdjustsScrollViewInsets = false;
            }
        }
示例#30
0
        public static void SetCommand(this UINavigationItem navigationItem, UIBarButtonSystemItem systemItem,
                                      ICommand command, bool left)
        {
            var item = new UIBarButtonItem(
                systemItem,
                (sender, e) => command?.Execute(sender));

            navigationItem.AddButtonItem(item, left);
        }
示例#31
0
        public static void SetCommand(this UINavigationItem navigationItem, UIImage image, ICommand command, bool left)
        {
            var item = new UIBarButtonItem(
                image,
                UIBarButtonItemStyle.Plain,
                (sender, e) => command?.Execute(sender));

            navigationItem.AddButtonItem(item, left);
        }
示例#32
0
        protected virtual void OnRendererSet()
        {
            NavigationItem = ViewController.NavigationItem;

            if (!PlatformVersion.IsAtLeast(11))
            {
                ViewController.AutomaticallyAdjustsScrollViewInsets = false;
            }
        }
 public static UIBarButtonItem CreateRightIconHeaderButton(this UIViewController controller, UIImage icon, UINavigationItem item)
 {
     var iconButton = new UIBarButtonItem ();
     iconButton.Image = icon;
     iconButton.SetBackgroundImage (new UIImage().Empty(), UIControlState.Normal, new UIBarMetrics ());
     iconButton.TintColor = UIColor.White;
     item.SetRightBarButtonItem (iconButton, true);
     return iconButton;
 }
示例#34
0
        private static void DisposeViewController(UIViewController viewController)
        {
            var viewControllerView = viewController as IViewControllerView;

            if (viewControllerView == null || viewControllerView.Mediator.IsViewLoaded)
            {
                viewController.View.ClearBindingsRecursively(true, true);
                viewController.View.DisposeEx();
                viewController.EditButtonItem.ClearBindings(true, true);
                viewController.EditButtonItem.DisposeEx();
                viewController.ToolbarItems.ClearBindings(true, true);
                viewController.ToolbarItems.DisposeEx();
                UINavigationItem navigationItem = viewController.NavigationItem;
                if (navigationItem != null)
                {
                    navigationItem.LeftBarButtonItem.ClearBindings(true, true);
                    navigationItem.LeftBarButtonItem.DisposeEx();
                    navigationItem.LeftBarButtonItems.ClearBindings(true, true);
                    navigationItem.LeftBarButtonItems.DisposeEx();
                    navigationItem.RightBarButtonItem.ClearBindings(true, true);
                    navigationItem.RightBarButtonItem.DisposeEx();
                    navigationItem.RightBarButtonItems.ClearBindings(true, true);
                    navigationItem.RightBarButtonItems.DisposeEx();
                    navigationItem.ClearBindings(true, true);
                    navigationItem.DisposeEx();
                }

                var dialogViewController = viewController as DialogViewController;
                if (dialogViewController != null)
                {
                    dialogViewController.Root.ClearBindingsRecursively(true, true);
                    dialogViewController.Root.DisposeEx();
                }
            }

            var tabBarController = viewController as UITabBarController;

            if (tabBarController == null)
            {
                var splitViewController = viewController as UISplitViewController;
                if (splitViewController != null)
                {
                    splitViewController.ViewControllers.ClearBindings(true, true);
                    splitViewController.ViewControllers.DisposeEx();
                }
            }
            else
            {
                tabBarController.ViewControllers.ClearBindings(true, true);
                tabBarController.ViewControllers.DisposeEx();
            }

            viewController.ChildViewControllers.ClearBindings(true, true);
            viewController.ChildViewControllers.DisposeEx();
            viewController.Dispose();
        }
示例#35
0
        public bool ShouldPopItem(UINavigationBar navigationBar, UINavigationItem item)
        {
            // this means the pop is already done, nothing we can do
            if (ViewControllers.Length < NavigationBar.Items.Length)
            {
                return(true);
            }

            foreach (var tracker in _trackers)
            {
                if (tracker.Value.ViewController == TopViewController)
                {
                    var behavior         = Shell.GetBackButtonBehavior(tracker.Value.Page);
                    var command          = behavior.GetPropertyIfSet <ICommand>(BackButtonBehavior.CommandProperty, null);
                    var commandParameter = behavior.GetPropertyIfSet <object>(BackButtonBehavior.CommandParameterProperty, null);

                    if (command != null)
                    {
                        if (command.CanExecute(commandParameter))
                        {
                            command.Execute(commandParameter);
                        }

                        return(false);
                    }

                    break;
                }
            }

            bool allowPop = ShouldPop();

            if (allowPop)
            {
                // Do not remove, wonky behavior on some versions of iOS if you dont dispatch
                CoreFoundation.DispatchQueue.MainQueue.DispatchAsync(() =>
                {
                    _popCompletionTask = new TaskCompletionSource <bool>();
                    SendPoppedOnCompletion(_popCompletionTask.Task);
                    PopViewController(true);
                });
            }
            else
            {
                for (int i = 0; i < NavigationBar.Subviews.Length; i++)
                {
                    var child = NavigationBar.Subviews[i];
                    if (child.Alpha != 1)
                    {
                        UIView.Animate(.2f, () => child.Alpha = 1);
                    }
                }
            }

            return(false);
        }
		void ReleaseDesignerOutlets ()
		{
			if (MainSearchBar != null) {
				MainSearchBar.Dispose ();
				MainSearchBar = null;
			}
			if (nav != null) {
				nav.Dispose ();
				nav = null;
			}
		}
        public bool ShouldPopItem(UINavigationBar navigationBar, UINavigationItem item)
        {
            if (this.isGoingBack && this.ViewControllers.Length < navigationBar.Items.Length)
            {
                this.isGoingBack = false;
                return true;
            }

            this.GoBack();
            return false;
        }
示例#38
0
 public static void AddButtonItem(this UINavigationItem navigationItem, UIBarButtonItem item, bool left)
 {
     if (left)
     {
         navigationItem.SetLeftBarButtonItem(item, false);
     }
     else
     {
         navigationItem.SetRightBarButtonItem(item, false);
     }
 }
        bool navigationBarShouldPopItem(UINavigationBar navigationBar, UINavigationItem item)
        {
            if (dontPopWhileYouPop) return true;

            RxApp.MainThreadScheduler.Schedule (() => {
                if (!router.NavigateBack.CanExecute(null) || dontPopWhileYouPop) return;
                dontPopWhileYouPop = true;
                router.NavigateBack.Execute(null);
            });

            return false;
        }
示例#40
0
        private void InitNavBar()
        {
            _navBar = new UINavigationBar();
            _navBar.Frame = NavbarFrame;
            _navBar.ClipsToBounds = true;

            UIBarButtonItem _backBtnItem = new UIBarButtonItem("Сканировать еще", UIBarButtonItemStyle.Plain, OnBackPressed);

            _backNavItem = new UINavigationItem();
            _backNavItem.LeftBarButtonItem = _backBtnItem;

            _navBar.SetItems(new UINavigationItem[] { _backNavItem }, false);
        }
 public static void SetupNavigationBar(SidebarNavigation.SidebarController sidebarController, NavController navController, UINavigationItem navItem, UIBarButtonItem menuButton)
 {
     menuButton = new UIBarButtonItem(UIImage.FromBundle("hamburger_menu_white.png")
             , UIBarButtonItemStyle.Plain
             , (sender, args) => {
                 sidebarController.ToggleMenu();
             });
     //menuButton.TintColor = Helper.Theme.Color.C2;
     navItem.SetLeftBarButtonItem(menuButton, true);
     navController.NavigationBar.BackgroundColor = Helper.Theme.Color.C2;
     navController.NavigationBar.BarStyle = UIBarStyle.BlackOpaque;
     navController.NavigationBar.TintColor = Helper.Theme.Color.C1;
     navController.NavigationBar.BarTintColor = Helper.Theme.Color.C2;
 }
示例#42
0
		public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();
			if (UIDevice.CurrentDevice.CheckSystemVersion(7,0)) {
				NavigationBar.Frame = new RectangleF (NavigationBar.Frame.X, NavigationBar.Frame.Y, NavigationBar.Frame.Width, 64.0f);
			}
			var item = new UINavigationItem (this.title);
			UIBarButtonItem button = new UIBarButtonItem (MainViewController.ResizedImageIcon(UIImage.FromFile("menu.png")), UIBarButtonItemStyle.Bordered, delegate {
				navigation.ToggleMenu();
			});
			item.LeftBarButtonItem = button;
			item.HidesBackButton = true;
			NavigationBar.PushNavigationItem (item, false);
		}
        /// <summary>
        /// Construct the UI
        /// </summary>
		public override void LoadView()
		{
			UIWindow appWindow = UIApplication.SharedApplication.Delegate.Window;
			float titlebarHeight = 45F;
			float appHeight = appWindow.Frame.Size.Height;
			float appWidth = appWindow.Frame.Size.Width;
			RectangleF frame = new RectangleF (0F, 0F, appWidth, appHeight);
			topView = new UIView (frame);
			topView.AutoresizingMask = UIViewAutoresizing.FlexibleWidth;
			RectangleF barFrame = new RectangleF (0F, 0F, appWidth, titlebarHeight);
			titleBar = new UINavigationBar (barFrame);
			titleBar.BarStyle = UIBarStyle.Black;
			titleBar.AutoresizingMask = UIViewAutoresizing.FlexibleWidth;

			RectangleF webviewFrame = new RectangleF (0F, titlebarHeight, appWidth, appHeight - titleBar.Frame.Size.Height);
			webView = new UIWebView (webviewFrame);
			webView.ScalesPageToFit = true;

			RectangleF activityFrame = new RectangleF(appWidth/2 - 12.5f, appHeight/2 -12.5f, 25F, 25F);
			activityView = new UIActivityIndicatorView (activityFrame);
			activityView.ActivityIndicatorViewStyle = UIActivityIndicatorViewStyle.Gray;
			activityView.SizeToFit ();
			activityView.AutoresizingMask = UIViewAutoresizing.FlexibleLeftMargin | UIViewAutoresizing.FlexibleRightMargin | UIViewAutoresizing.FlexibleTopMargin | UIViewAutoresizing.FlexibleBottomMargin;

			topView.AddSubview (titleBar);
			topView.AddSubview (activityView);
			topView.AddSubview (webView);

			UINavigationItem titleBarItem = new UINavigationItem ("Login");
			UIBarButtonItem done = new UIBarButtonItem ("Close", UIBarButtonItemStyle.Done, delegate (object sender, EventArgs e) {
				cancelled = true;
				CloseView();
			});

			titleBarItem.SetLeftBarButtonItem (done, true);
			titleBar.PushNavigationItem (titleBarItem, true);

			this.View = topView;
		}
        public IPhoneUIViewController(string title, string backButtonText)
        {
            contentView = new UIView();
            contentView.Frame = new CGRect(new CGPoint(0,0),new CGSize(this.View.Frame.Size.Width, this.View.Frame.Size.Height));
            contentView.BackgroundColor = UIColor.White;
            contentView.AutoresizingMask = UIViewAutoresizing.FlexibleWidth | UIViewAutoresizing.FlexibleHeight;

            UIBarButtonItem backButton = new UIBarButtonItem();
            backButton.Title=backButtonText;
            backButton.Style = UIBarButtonItemStyle.Bordered;
            backButton.Clicked += delegate(object sender, EventArgs e) {
                UIApplication.SharedApplication.InvokeOnMainThread (delegate {
                    UIView[] subviews = this.View.Subviews;
                    foreach(UIView subview in subviews) {
                        if(subview.GetType() == typeof(UIWebView) ) {
                            UIWebView webView = (UIWebView) subview;
                            //clean webview by loading a blank page (prevent video players keep playing after view controller closes)
                            webView.LoadHtmlString("<html></html>", new NSUrl("/"));
                        }
                    }
                    IPhoneServiceLocator.CurrentDelegate.MainUIViewController ().DismissModalViewController(true);
                });
            };

            UINavigationItem navItem = new UINavigationItem(title);
            navItem.LeftBarButtonItem = backButton;

            UINavigationBar toolBar = new UINavigationBar();
            toolBar.Frame = new CGRect(new CGPoint(0,0), new CGSize(this.View.Frame.Size.Width, this.GetNavigationBarHeight()));
            toolBar.PushNavigationItem(navItem, false);
            toolBar.AutoresizingMask = UIViewAutoresizing.FlexibleWidth;
            contentView.AddSubview(toolBar);

            this.View = contentView;

            this.ModalPresentationStyle = UIModalPresentationStyle.FullScreen;
            this.ModalTransitionStyle = UIModalTransitionStyle.CoverVertical;
            this.ModalInPopover = true;
        }
        public override void LoadView()
        {
            base.LoadView();

            BarTintPlaceholder = new UIView(new CoreGraphics.CGRect(0,0, this.View.Bounds.Height, 20));
            BarTintPlaceholder.BackgroundColor = UIColor.FromRGB(0.2745f, 0.3451f, 0.4157f);

            FavoriteCatTableView = new UITableView();
            FavoriteCatTableView.BackgroundColor = ColorScheme.Clouds;
            myNavBar = new UINavigationBar(new CoreGraphics.CGRect(0,20,this.View.Bounds.Width, 44));
            myNavBar.BackgroundColor = ColorScheme.WetAsphalt;
            NavBarItem = new UINavigationItem("Favorite Categories");
            this.View.AddSubviews(new UIView[]{BarTintPlaceholder, FavoriteCatTableView, myNavBar});

            FavoriteCatTableView.TranslatesAutoresizingMaskIntoConstraints = false;
            this.View.AddConstraints(new NSLayoutConstraint[]{
                NSLayoutConstraint.Create(FavoriteCatTableView, NSLayoutAttribute.Top, NSLayoutRelation.Equal, myNavBar, NSLayoutAttribute.Bottom, 1, 0),
                NSLayoutConstraint.Create(FavoriteCatTableView, NSLayoutAttribute.Left, NSLayoutRelation.Equal, this.View, NSLayoutAttribute.Left, 1, 0),
                NSLayoutConstraint.Create(FavoriteCatTableView, NSLayoutAttribute.Right, NSLayoutRelation.Equal, this.View, NSLayoutAttribute.Right, 1, 0),
                NSLayoutConstraint.Create(FavoriteCatTableView, NSLayoutAttribute.Bottom, NSLayoutRelation.Equal, this.View, NSLayoutAttribute.Bottom, 1, 0),
            });
        }
示例#46
0
		public override void ViewDidLoad ()
		{
			base.ViewDidLoad ();
			stationsRepository = new WebStationRepository ();

			var centerPoint = Station.TroncalRouteCenter;
			var centerCoordinate = new CLLocationCoordinate2D (centerPoint.Y, centerPoint.X);
			var bounds = UIScreen.MainScreen.Bounds;

			CameraPosition cameraPosition = CameraPosition.FromCamera (centerCoordinate, 14.0f);
			var map = MapView.FromCamera (new RectangleF (0, 64, bounds.Width, bounds.Height - 60), cameraPosition);
			map.MyLocationEnabled = true;
			map.MapType = MapViewType.Normal;
			map.Settings.MyLocationButton = true;

			this.mapView = map;
			if (UIDevice.CurrentDevice.CheckSystemVersion(7,0)) {
				NavigationBar.Frame = new RectangleF (NavigationBar.Frame.X, NavigationBar.Frame.Y, NavigationBar.Frame.Width, 64.0f);
			}

			var item = new UINavigationItem ("CHART");
			UIBarButtonItem button = new UIBarButtonItem (MainViewController.ResizedImageIcon(UIImage.FromFile("menu.png")), UIBarButtonItemStyle.Bordered, delegate {
				navigation.ToggleMenu();
			});
			UIBarButtonItem closestStationButton = new UIBarButtonItem ("Cercana", UIBarButtonItemStyle.Bordered, delegate {
				FindClosestStation();
			});

			item.LeftBarButtonItem = button;
			item.HidesBackButton = true;
			item.RightBarButtonItem = closestStationButton;
			NavigationBar.PushNavigationItem (item, false);

			notificationView = new GCDiscreetNotificationView ("Buscando estación cercana...", 
			                                                  true, GCDNPresentationMode.Bottom, mapView);
			this.View.AddSubview (map);
			LoadMapInfo ();
		}
示例#47
0
        public bool ShouldPopItem(UINavigationBar bar, UINavigationItem item)
        {
			//Console.WriteLine("NavCtrl - ShouldPopItem - VisibleViewCtrl: {0}", VisibleViewController.GetType().FullName);
            SetButtonVisibility();
            UpdateNowPlayingView();

            if (ViewControllers.Length == 1)
            {
                _btnBack.Frame = new RectangleF(0, _btnBack.Frame.Y, _btnBack.Frame.Width, _btnBack.Frame.Height);
                UIView.Animate(0.2, () => { 
                    _btnBack.Frame = new RectangleF(50, _btnBack.Frame.Y, _btnBack.Frame.Width, _btnBack.Frame.Height);
                    _btnBack.Alpha = 0;
                });
            }

            return true;
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();

            navBar = new UINavigationBar (new RectangleF (0, 0, 320, 44));
            var bbi = new UIBarButtonItem(UIImage.FromBundle ("Images/slideout"), UIBarButtonItemStyle.Plain, (sender, e) => {
                AppDelegate.Current.FlyoutNavigation.ToggleMenu();
            });
            var rbi = new UIBarButtonItem (UIImage.FromBundle ("Images/113-navigation"), UIBarButtonItemStyle.Plain, (sender,e) => {
                mapFlipViewController.Flip();
            });

            var item = new UINavigationItem ("Location Map");
            item.LeftBarButtonItem = bbi;
            item.RightBarButtonItem = rbi;
            var items = new UINavigationItem[] {
                item
            };
            navBar.SetItems (items, false);

            mapView = new MKMapView()
            {
                ShowsUserLocation = true
            };

            labelDistance = new UILabel()
            {
                Frame = new RectangleF (0, 44, 320, 49),
                Lines = 2,
                BackgroundColor = UIColor.Black,
                TextColor = UIColor.White
            };

            var segmentedControl = new UISegmentedControl();
            var topOfSegement = View.Frame.Height - 60;
            segmentedControl.Frame = new RectangleF(20, topOfSegement, 282, 30);
            segmentedControl.InsertSegment("Map", 0, false);
            segmentedControl.InsertSegment("Satellite", 1, false);
            segmentedControl.InsertSegment("Hybrid", 2, false);
            segmentedControl.SelectedSegment = 0;
            segmentedControl.ControlStyle = UISegmentedControlStyle.Bar;
            segmentedControl.TintColor = UIColor.DarkGray;

            segmentedControl.ValueChanged += delegate {
                if (segmentedControl.SelectedSegment == 0)
                    mapView.MapType = MonoTouch.MapKit.MKMapType.Standard;
                else if (segmentedControl.SelectedSegment == 1)
                    mapView.MapType = MonoTouch.MapKit.MKMapType.Satellite;
                else if (segmentedControl.SelectedSegment == 2)
                    mapView.MapType = MonoTouch.MapKit.MKMapType.Hybrid;
            };

            mapView.Delegate = new MapViewDelegate(this);

            // Set the web view to fit the width of the app.
            mapView.SizeToFit();

            // Reposition and resize the receiver
            mapView.Frame = new RectangleF (0, 44 + 50, View.Frame.Width, View.Frame.Height - 93);

            MKCoordinateSpan span = new MKCoordinateSpan(0.01,0.01);
            MKCoordinateRegion region = new MKCoordinateRegion(ConferenceLocation.Location.To2D(),span);
            mapView.SetRegion(region, true);

            ConferenceAnnotation a = new ConferenceAnnotation(ConferenceLocation.Location.To2D()
                                                              , ConferenceLocation.Title
                                                              , ConferenceLocation.Subtitle
                              );
            mapView.AddAnnotationObject(a);

            locationManager = new CLLocationManager();
            locationManager.Delegate = new LocationManagerDelegate(mapView, this);
            locationManager.Purpose = "Show distance on map"; // also Info.plist
            locationManager.StartUpdatingLocation();

            // Add the table view as a subview
            View.AddSubview(mapView);
            View.AddSubview(labelDistance);
            View.AddSubview(segmentedControl);

            // Add the 'info' button to flip
            var flipButton = UIButton.FromType(UIButtonType.InfoLight);
            flipButton.Frame = new RectangleF(290,17,20,20);
            flipButton.Title (UIControlState.Normal);
            flipButton.TouchDown += delegate {
                mapFlipViewController.Flip();
            };
            View.AddSubview(flipButton);

            View.Add (navBar);
        }
示例#49
0
		public override bool ShouldPushItem (UINavigationBar navigationBar, UINavigationItem item)
		{
			// TODO: Implement - see: http://go-mono.com/docs/index.aspx?link=T%3aMonoTouch.Foundation.ModelAttribute
			return true;
		} 
示例#50
0
		public override void DidPopItem (UINavigationBar navigationBar, UINavigationItem item)
		{
			// TODO: Implement - see: http://go-mono.com/docs/index.aspx?link=T%3aMonoTouch.Foundation.ModelAttribute
		}
 protected virtual void DidPopItem(UINavigationBar navigationBar, UINavigationItem item)
 {
     RaiseDidPopViewController();
 }
 protected virtual bool ShouldPopItem(UINavigationBar navigationBar, UINavigationItem item)
 {
     if (ViewControllers.Length < navigationBar.Items.Length)
         return true;
     PopViewController(true);
     return false;
 }
示例#53
0
		public Composer () : base (null, null)
		{
            Title = "New Comment";

			// Navigation Bar
		    _navigationBar = new UINavigationBar(new RectangleF(0, 0, UIScreen.MainScreen.Bounds.Width, 44))
		                         {AutoresizingMask = UIViewAutoresizing.FlexibleWidth, AutosizesSubviews = true};
		    _navItem = new UINavigationItem ("");
			var close = new UIBarButtonItem (NavigationButton.Create(Images.Buttons.Cancel, CloseComposer));
			_navItem.LeftBarButtonItem = close;
            SendItem = new UIBarButtonItem (NavigationButton.Create(Images.Buttons.Save, PostCallback));
			_navItem.RightBarButtonItem = SendItem;

			_navigationBar.PushNavigationItem (_navItem, false);
			
			// Composer
			_composerView = new ComposerView (ComputeComposerSize (RectangleF.Empty), this);
			
			// Add the views
			View.AddSubview (_composerView);
			View.AddSubview (_navigationBar);
		}
示例#54
0
		/// <summary>
		/// Views the did load.
		/// </summary>
		/// 
		public override void ViewDidLoad ()
		{
			ECLSUIUtil.TryAction<ECLSPopover> ("ViewDidLoad", () => {
				base.ViewDidLoad ();

				// default frame size
				this.View.Frame = OnGetFrame ();

				if (_style == ECLSPopoverStyle.OkCancel) {
					_navigationBar = new UINavigationBar (
						CGRect.FromLTRB (0, 0, UIApplication.SharedApplication.Delegate.GetWindow ().Frame.Width, 44)

					);
					_navigationBar.BackgroundColor = UIColor.DarkGray; //UIColor.FromRGB (175,1,83); //magenta
					//	_navigationBar.TintColor = UIColor.FromRGB (175,1,83); // UIColor.White; 
					
					_leftBarButtonItem = new UIBarButtonItem (UIBarButtonSystemItem.Cancel);                    
					_rightBarButtonItem = new UIBarButtonItem (UIBarButtonSystemItem.Done);
					_leftBarButtonItem.SetTitlePositionAdjustment (new UIOffset (15f, 0), UIBarMetrics.Default);
					_rightBarButtonItem.SetTitlePositionAdjustment (new UIOffset (-15f, 0), UIBarMetrics.Default);
					UINavigationItem navItem = new UINavigationItem () {
						LeftBarButtonItem = _leftBarButtonItem,
						RightBarButtonItem = _rightBarButtonItem,
					};

                    
					_navigationBar.SetItems (
						new UINavigationItem[] { navItem }, false
					);
					_navigationBar.ClipsToBounds = false;
                    
					_buttonItemHandler = new ECLSPopoverButtonItemHandler (
						navItem.LeftBarButtonItem, navItem.RightBarButtonItem
					);
					_buttonItemHandler.NotifyComplete = this.NotifyComplete;

					this.View.AddSubview (_navigationBar);

					this.View.AddSubview (
						new UIView (CGRect.FromLTRB (0, _navigationBar.Frame.Height, this.View.Bounds.Right, this.View.Bounds.Bottom)) {

							BackgroundColor = UIColor.FromRGB (240, 232, 236),
							Alpha = .95f
						}
					);	
					/*this.View.AddSubview(
						new UIImageView(UIImage.FromFile(@"Images/Background_Calculating_Full.png").StretchableImage(0, 5)) {
							Frame = RectangleF.FromLTRB(0, _navigationBar.Frame.Height, this.View.Bounds.Right, this.View.Bounds.Bottom)
						}
					);	*/										
				} else if (_style == ECLSPopoverStyle.Activity) {
						
					/*this.View.AddSubview(
						new UIImageView(UIImage.FromFile(@"Images/Background_Calculating_Full.png").StretchableImage(0, 5)) {
							Frame = this.View.Bounds
						}
					);
					
*/
					this.View.AddSubview (new UIView (this.View.Bounds) {
						BackgroundColor = UIColor.Black, 
						//BackgroundColor =  UIColor.FromRGB (175,1,83),  //magenta
						Alpha = .75f
					});
					
					_activityLabel = new UILabel () {
						Frame = CGRect.FromLTRB (this.View.Frame.Left, (_frameHeight / 2), this.View.Frame.Width, (_frameHeight / 2) + 31 /* adjusted below */),
						TextAlignment = UITextAlignment.Center,
						Lines = 3,
						LineBreakMode = UILineBreakMode.WordWrap,
						BackgroundColor = UIColor.Clear,
						Opaque = true,
						TextColor = UIColor.White,
						Text = this.Title,
						ShadowColor = UIColor.Black,
						ShadowOffset = new CGSize (0f, -1.0f),
						Font = ECLSUIUtil.HelveticaNeueBold (24.0f)
					};					
					CGSize labelSize = ECLSUIUtil.LabelRequiredSize (_activityLabel, this.Title);
					_activityLabel.Frame = CGRect.FromLTRB (
						_activityLabel.Frame.Left, _activityLabel.Frame.Top, _activityLabel.Frame.Right, _activityLabel.Frame.Top + labelSize.Height
					);
					this.View.AddSubview (_activityLabel);
			
					_activityIndicator = new UIActivityIndicatorView () {
						HidesWhenStopped = true,
						Center = new CGPoint (
							this.View.Frame.Width / 2, (_frameHeight / 2) - 20
						)
					};
					this.View.AddSubview (_activityIndicator);

					_activityIndicator.StartAnimating ();
				} else if (_style == ECLSPopoverStyle.Plain) {
								
					_activityLabel = new UILabel () {
						Frame = CGRect.FromLTRB (this.View.Frame.Left, (_frameHeight / 2), this.View.Frame.Width, (_frameHeight / 2) + 31 /* adjusted below */),
						TextAlignment = UITextAlignment.Center,
						Lines = 3,
						LineBreakMode = UILineBreakMode.WordWrap,
						BackgroundColor = UIColor.Clear,
						Opaque = true,
						TextColor = UIColor.White,
						Text = this.Title,
						ShadowColor = UIColor.Black,
						ShadowOffset = new CGSize (0f, -1.0f),
						Font = ECLSUIUtil.HelveticaNeueBold (18.0f)
					};					
					CGSize labelSize = ECLSUIUtil.LabelRequiredSize (_activityLabel, this.Title);
					_activityLabel.Frame = CGRect.FromLTRB (
						_activityLabel.Frame.Left, _activityLabel.Frame.Top, _activityLabel.Frame.Right, _activityLabel.Frame.Top + labelSize.Height
					);
					this.View.AddSubview (_activityLabel);

					_activityIndicator = new UIActivityIndicatorView () {
						HidesWhenStopped = true,
						Center = new CGPoint (
							this.View.Frame.Width / 2, (_frameHeight / 2) - 20
						)
					};
					this.View.AddSubview (_activityIndicator);

					_activityIndicator.StartAnimating ();
				}
			});
		
		}
示例#55
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();
            this.View.Layer.Frame = new CoreGraphics.CGRect (0, 0, uvWidth, uvheight);
            mutListView = new UITableView (new CoreGraphics.CGRect (0, 88, uvWidth, uvheight-100));
            mutListView.AllowsMultipleSelection = AllowsMultipleSelection;
            mutListView.AllowsMultipleSelectionDuringEditing = AllowsMultipleSelection;
            NavBar=new UINavigationBar(new CoreGraphics.CGRect (0, 0, uvWidth, 44));
            //			UIBarButtonItem bbitemCancel = new UIBarButtonItem (UIBarButtonSystemItem.Cancel, CancelButtonClicked);
            UIButton btnCancel = new UIButton (new CGRect (0, 0, 80, 30));
            btnCancel.SetTitleColor (UIColor.Blue, UIControlState.Normal);
            btnCancel.SetTitle ("Cancel", UIControlState.Normal);
            btnCancel.TouchUpInside += (object sender, EventArgs e) => {
                popover.Dismiss(false);
            };
            UIBarButtonItem bbitemCancel = new UIBarButtonItem (btnCancel);

            //			UIBarButtonItem bbitemDone = new UIBarButtonItem (UIBarButtonSystemItem.Done, DoneButtonClicked);
            UIButton btnDone = new UIButton (new CGRect (0, 0, 80, 30));
            btnDone.SetTitleColor (UIColor.Blue, UIControlState.Normal);
            btnDone.SetTitle ("Done", UIControlState.Normal);
            btnDone.TouchUpInside += (object sender, EventArgs e) => {
                DismissPopOver();
            };
            UIBarButtonItem bbitemDone = new UIBarButtonItem (btnDone);

            UINavigationItem navgitem = new UINavigationItem ("Select");
            navgitem.SetLeftBarButtonItem(bbitemCancel,true);
            navgitem.SetRightBarButtonItem (bbitemDone, true);
            NavBar.PushNavigationItem(navgitem,true);
            searchBar=new UISearchBar(new CoreGraphics.CGRect (0, 44, uvWidth, 44));
            this.View.Add (NavBar);
            this.View.AddSubview(mutListView);
            this.View.AddSubview(searchBar);
            this.mutListView.Source =new mCodePickerSource(this);
            //mutListView.SetContentOffset (new CoreGraphics.CGPoint (0, mutListView.ContentSize.Height - mutListView.Frame.Size.Height), false);
            //CoreGraphics.CGRect fram = mutListView.Frame;
            //fram.Height = mutListView.ContentSize.Height;
            //	mutListView.Frame = fram;
            this.searchBar.TextChanged += (object sender, UISearchBarTextChangedEventArgs e) =>
            {
                //DataSource.Clear();
                DataSource=tempds.FindAll(u=>u.ItemText.ToLower().Contains(searchBar.Text.ToLower()));
                this.mutListView.Source =new mCodePickerSource(this);
                this.mutListView.ReloadData();
                searchBar.ShowsCancelButton = true;

            };

            this.searchBar.CancelButtonClicked += (object sender, EventArgs e) => {
                searchBar.Text=string.Empty;
                DataSource=tempds;
                searchBar.ResignFirstResponder();
                searchBar.ShowsCancelButton = false;
                this.mutListView.ReloadData();
            };
            //lbltitle.Title = "Select";
            //btnDone.Clicked+= (object sender, EventArgs e) => {
            //	DismissPopOver();
            //};
            //BtnCancel.Clicked+= (object sender, EventArgs e) => {
            //
            //};
            //mTrashBtn.Clicked+= (object sender, EventArgs e) => {
                //if(popover!=null)
                //	popover.Dismiss(false);
            //};
            // Perform any additional setup after loading the view, typically from a nib.
        }
示例#56
0
        public void AddBindings(BindingParameters[] bindingsParameters = null, UIView rootView = null, UINavigationItem navigationItem = null)
        {
            if (bindingsParameters != null)
            {
                Console.WriteLine("Adding bindings from code ...");
                foreach (var bp in bindingsParameters) AddBinding(bp);
            }
            if (rootView != null)
            {
                List<BindingParameters> bindingParametersList;
                if (ViewDataBindings.RootViewBindingParameters.TryGetValue(rootView, out bindingParametersList))
                {
                    Console.WriteLine("Adding bindings from markup ...");
                    ViewDataBindings.RootViewBindingParameters.Remove(rootView); // Remove the static reference to the views to prevent memory leaks. Note that if we would want to recreate the bindings later, we could also store the parameters list in the bindings.
                    foreach (var bp in bindingParametersList) AddBinding(bp);
                }
            }
            if (navigationItem != null)
            {
                BindingParameters bp;
                if (ObjectBindingParameters.TryGetValue(navigationItem, out bp))
                {
                    AddBinding(bp);
                    ObjectBindingParameters.Remove(navigationItem);
                }

                var uiBarItems = new List<UIBarItem>();
                // TODO: check if we need this eg when leftItemsSupplementBackButton is true? uiBarItems.Add(navigationItem.BackBarButtonItem);
                if (navigationItem.LeftBarButtonItems != null) uiBarItems.AddRange(navigationItem.LeftBarButtonItems);
                if (navigationItem.RightBarButtonItems != null) uiBarItems.AddRange(navigationItem.RightBarButtonItems);
                // TODO: check if navigationItem.TitleView also needs Bind custom runtime attribute support?
                foreach (var uiBarItem in uiBarItems)
                {
                    if (ObjectBindingParameters.TryGetValue(uiBarItem, out bp))
                    {
                        AddBinding(bp);
                        ObjectBindingParameters.Remove(uiBarItem);
                    }
                }
            }
        }
示例#57
0
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();

            View.Layer.Frame = new CoreGraphics.CGRect (0, 0, uvWidth, uvheight);
            NavBar=new UINavigationBar(new CoreGraphics.CGRect (0, 0, uvWidth, 44));
            utListView = new UITableView (new CoreGraphics.CGRect (0, 44, uvWidth, uvheight));
            //			UIBarButtonItem TrashBtn = new UIBarButtonItem (UIBarButtonSystemItem.Cancel, TrashBtnClicked);

            UIButton btnCancel = new UIButton (new CGRect (0, 0, 80, 30));
            btnCancel.SetTitleColor (UIColor.Blue, UIControlState.Normal);
            btnCancel.SetTitle ("Cancel", UIControlState.Normal);
            btnCancel.TouchUpInside += (object sender, EventArgs e) => {
                if(popover!=null)
                    popover.Dismiss(false);
            };
            UIBarButtonItem TrashBtn = new UIBarButtonItem (btnCancel);

            UINavigationItem navgitem = new UINavigationItem ("Select");
            navgitem.SetLeftBarButtonItem (TrashBtn, true);
            NavBar.PushNavigationItem(navgitem,true);
            searchBar=new UISearchBar(new CoreGraphics.CGRect (100, 0, uvWidth-100, 44));
            this.View.Add (NavBar);
            this.View.AddSubview(utListView);
            this.View.AddSubview(searchBar);
            this.utListView.Source =new CodePickerSource(this);
            searchBar.BecomeFirstResponder ();
            searchBar.Text = searchkey;
            searchBar.TextChanged+= async (object sender, UISearchBarTextChangedEventArgs e) => {
                if(!string.IsNullOrEmpty(searchBar.Text))
                {
                    AppDelegate.pb.Start(this.View,"Searching...");
                    var webClient = new WebClient();
                    string url =  "http://reference.iprocedures.com/"+type+"/"+searchBar.Text.Trim()+"/20";
                    string procData = webClient.DownloadString (url);
                    procedureItems = (ProcedureDiagnosticMaster)JsonConvert.DeserializeObject (procData, typeof(ProcedureDiagnosticMaster));
                    int uwidth = 0;
                    DataSource = SetProcedureDataSource(out uwidth);
                    this.utListView.Source =new CodePickerSource(this);
                    this.utListView.ReloadData();
                    AppDelegate.pb.Stop();
                }

                    //RectangleF fillrect = new RectangleF(0,0,uwidth,uvheight);
                    //this.View.Frame=fillrect;

            };

            // Perform any additional setup after loading the view, typically from a nib.
        }
        public override void ViewDidLoad()
        {
            base.ViewDidLoad ();
            View.BackgroundColor = UIColor.DarkGray;

            passAvailable = new UITextView (new RectangleF (20, top + 100, 300, 200));
            passAvailable.Font = UIFont.SystemFontOfSize(14f);
            passAvailable.BackgroundColor = UIColor.Clear;
            passAvailable.TextColor = UIColor.White;
            passAvailable.Editable = false;
            Add (passAvailable);

            var topOfButton = View.Frame.Height - 160 + top;
            showPass = UIButton.FromType (UIButtonType.Custom);
            showPass.Frame = new RectangleF(60, topOfButton, 200, 40);
            showPass.Layer.CornerRadius = 7f;
            showPass.Layer.MasksToBounds = true;
            showPass.Layer.BorderColor = new MonoTouch.CoreGraphics.CGColor(0.8f, 1.0f);
            showPass.Layer.BorderWidth = 1;
            showPass.SetTitle ("Open in Passbook", UIControlState.Normal);
            showPass.BackgroundColor = UIColor.DarkGray;
            showPass.SetTitleColor(UIColor.White, UIControlState.Normal);
            showPass.SetTitleShadowColor (UIColor.Black, UIControlState.Normal);
            showPass.TitleShadowOffset = new SizeF(1,1);
            showPass.SetTitleColor(UIColor.LightGray, UIControlState.Highlighted);

            showPass.TouchUpInside += (sender, e) => {
                UIApplication.SharedApplication.OpenUrl (currentPass.PassUrl);
            };
            Add (showPass);

            passHeading = new UILabel (new RectangleF (10, top + 40, 310, 80));
            passHeading.Text = "No Event Ticket\nin Passbook";
            passHeading.Lines = 2;
            passHeading.TextAlignment = UITextAlignment.Center;
            passHeading.Font = UIFont.SystemFontOfSize(24f);
            passHeading.BackgroundColor = UIColor.Clear;
            passHeading.TextColor = UIColor.White;
            passHeading.ShadowColor= UIColor.Black;
            passHeading.ShadowOffset = new SizeF(1,1);
            Add (passHeading);

            passImage = new UIImageView (new RectangleF(90,top + 120,147,186));
            passImage.Image = UIImage.FromBundle("Images/NoTicketSlash");
            Add (passImage);

            navBar = new UINavigationBar (new RectangleF (0, 0, 320, 44));
            var bbi = new UIBarButtonItem(UIImage.FromBundle ("Images/slideout"), UIBarButtonItemStyle.Plain, (sender, e) => {
                AppDelegate.Current.FlyoutNavigation.ToggleMenu();
            });
            var item = new UINavigationItem ("Passbook");
            item.LeftBarButtonItem = bbi;
            var items = new UINavigationItem[] {
                item
            };
            navBar.SetItems (items, false);

            View.Add (navBar);

            library = new PKPassLibrary ();
            noteCenter = NSNotificationCenter.DefaultCenter.AddObserver (PKPassLibrary.DidChangeNotification, (not) => {
                BeginInvokeOnMainThread (() => {
                    // refresh the pass
                    passes = library.GetPasses ();
                    RenderPass(passes);
                });
            }, library);  // IMPORTANT: must pass the library in

            passes = library.GetPasses ();
            RenderPass(passes);
        }