如何在 Xamarin for iOS 中呈现具有不同导航的 viewController
Posted
技术标签:
【中文标题】如何在 Xamarin for iOS 中呈现具有不同导航的 viewController【英文标题】:How can present a viewController with a different navigation in Xamarin for iOS 【发布时间】:2018-06-13 13:46:07 【问题描述】:应用程序中已经存在导航,但是对于特定的 ViewController,我需要创建一个单独的导航。有可能吗??谢谢
【问题讨论】:
是的,可以创建新导航并将其设置为 rootview 控制器 如何创建它? 【参考方案1】:您可以在AppDelegate
中创建单独的导航,并通过触发按钮点击事件或其他任何方式将其设置为Window的RootViewController。
AppDelegate
UINavigationController originNav;
UINavigationController newNav;
public void changeNavigation()
newNav = new UINavigationController(new UIViewController2());
Window.RootViewController = newNav;
public override bool FinishedLaunching(UIApplication application, NSDictionary launchOptions)
originNav = new UINavigationController(new UIViewController1());
Window = new UIWindow(UIScreen.MainScreen.Bounds);
Window.RootViewController = originNav;
Window.MakeKeyAndVisible();
originNav里面的ViewController
//wherever
private void buttonClick()
AppDelegate app = UIApplication.SharedApplication.Delegate as AppDelegate;
app.changeNavigation();
【讨论】:
感谢您的回答。就一个问题。你觉得 UIViewController1 和 UIViewController2 怎么样?非常感谢 它们只是导航中的初始视图控制器,如果它们包含在故事板中,您可以通过UIViewController vc1 = UIStoryboard.FromName("MainStoryboard", null).InstantiateViewController("UIViewController1");
创建它们。以上是关于如何在 Xamarin for iOS 中呈现具有不同导航的 viewController的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin ios - 如何从静态 TableView 访问单元格
如何在 Xamarin 中使用具有 android/IOS 特定视图的控制模板
Xamarin.Forms 警告:尝试使用 iOS 图像/手势识别器在其视图不在窗口层次结构中的 * 上呈现 *
如何将背景图像分配给 ios 的 xamarin 表单中的条目