public override void RowSelected(UITableView tableView, NSIndexPath indexPath) { int row = indexPath.Row; ISubstitutableDetailViewController detailViewController = null; if (row == 0) { FirstDetailView newDetailViewController = new FirstDetailView(); detailViewController = newDetailViewController; } if (row == 1) { SecondDetailView newDetailViewController = new SecondDetailView(); detailViewController = newDetailViewController; } var existingVC = _rootViewController.SplitViewController.ViewControllers[1] as ISubstitutableDetailViewController; detailViewController.RootPopoverButtonItem = existingVC.RootPopoverButtonItem; detailViewController.PopOverController = existingVC.PopOverController; // Update the split view controller's view controllers array. var viewControllers = new UIViewController[] { _rootViewController.NavigationController, detailViewController as UIViewController }; _rootViewController.SplitViewController.ViewControllers = viewControllers; UINavigationController parentViewController = _rootViewController.ParentViewController as UINavigationController; if (detailViewController.RootPopoverButtonItem != null) { detailViewController.ShowRootPopoverButtonItem(detailViewController.RootPopoverButtonItem); } if (detailViewController.PopOverController != null) { detailViewController.PopOverController.Dismiss(true); } }
public override void RowSelected(UITableView tableView, NSIndexPath indexPath) { int row = indexPath.Row; ISubstitutableDetailViewController detailViewController = null; if (row == 0) { FirstDetailView newDetailViewController = new FirstDetailView(); detailViewController = newDetailViewController; } if (row == 1) { SecondDetailView newDetailViewController = new SecondDetailView(); detailViewController = newDetailViewController; } var existingVC = _rootViewController.SplitViewController.ViewControllers[1] as ISubstitutableDetailViewController; detailViewController.RootPopoverButtonItem = existingVC.RootPopoverButtonItem; detailViewController.PopOverController = existingVC.PopOverController; // Update the split view controller's view controllers array. var viewControllers = new UIViewController[] { _rootViewController.NavigationController, detailViewController as UIViewController }; _rootViewController.SplitViewController.ViewControllers = viewControllers; UINavigationController parentViewController = _rootViewController.ParentViewController as UINavigationController; if (detailViewController.RootPopoverButtonItem != null) { detailViewController.ShowRootPopoverButtonItem( detailViewController.RootPopoverButtonItem); } if (detailViewController.PopOverController != null) { detailViewController.PopOverController.Dismiss(true); } }