导航控制器 Xamarin.ios

NavigationController Xamarin.ios

我正在使用导航控制器来管理我的 xamarin.ios 项目的故事板,我的情况是从动态原型 table(使用 table 源单元格进行自定义), 我必须切换到由 NavigationControllers 驱动的 viewcontroller,因此处理导航栏不出现使我无法返回到以前的控制器。

public void ApriStoryBoard(string x)
    {
        var storyboard = UIStoryboard.FromName("Main", null);
        var viewController = storyboard.InstantiateViewController(x); // Your view controller here

        UIApplication.SharedApplication.KeyWindow.RootViewController = viewController;
    }

我目前正在尝试使用 PushViewController,但它不起作用..

 public void ApriNavigationController()
    {
        ThisSchedaView x = this.Storyboard.InstantiateViewController("QuestaSchedaNav") as ThisSchedaView;
        NavigationController.PushViewController(x, true);
    }

如果使用 NavigationController 导航:

NavigationController.PushViewController(secondViewController, true);

您可以使用以下方式回到上一个 vontroller:

 NavigationController.PopViewController(true);
 //or specify the needed controller 
 NavigationController.PopToViewController(previousController, true);

如果使用 模型视图 导航到下一个控制器,如下所示:

PresentModalViewController(secondViewController, true);

您可以使用以下方式返回到之前的控制器:

DismissModalViewController(true);

================================更新#1========== ===================

如果使用NavigationCotroller导航,条件是根控制器

例如在.StoryBoard中:

或在.cs中代码如下:

...
this.Window.RootViewController = new UINavigationController(xxxController);
...