public override bool ShouldSelectViewController(UITabBarController tabBarController, UIViewController viewController)
            {
                UINavigationController navController = viewController as UINavigationController;

                System.Console.WriteLine("TabBarControllerDelegate:ShouldSelectViewController");

                if (navController.ViewControllers.Length == 0)
                {
                    int index = Array.IndexOf(tabBarController.ViewControllers, viewController);
                    if (index >= 0)
                    {
                        Type viewType = _parent._viewGroup.Items[index].ViewType;

                        MXViewPerspective viewPerspective = MXContainer.Instance.Views.GetViewPerspectiveForViewType(viewType);
                        string            pattern         = MXContainer.Instance.App.NavigationMap.GetPatternForModelType(viewPerspective.ModelType);
                        MXTouchContainer.Navigate(null, pattern);
                    }
                }
                else
                {
                    // do nothing, tab has a view, leave it for the contained view to figure out what needs
                    // to be done
                }

                return(true);
            }
Esempio n. 2
0
 public override void Redirect(string url)
 {
     MXTouchContainer.Navigate(null, url);
     CancelLoad = true;
 }