如何使用 Monotouch 在 iPad 故事板应用程序中以编程方式管理视图

Posted

技术标签:

【中文标题】如何使用 Monotouch 在 iPad 故事板应用程序中以编程方式管理视图【英文标题】:How to manage views programmatically in an iPad storyboard application using Monotouch 【发布时间】:2012-08-28 19:07:44 【问题描述】:

我使用最新版本的 Monotouch 创建了一个 iPad 故事板应用程序。我的第一个屏幕是登录屏幕,我只想在用户没有保存他的凭据时显示。如果凭据可用,我想导航到第二个场景的 UITabBarController。我似乎找不到任何有关如何执行此操作的文档。我尝试创建一个 UITabBarController 的实例并推送到它,但它不起作用。

homeScreen = new HomeTabBarNavigator(this.Handle);
this.NavigationController.PushViewController(homeScreen,true); 

HomeTabBarNavigator 是一个已经链接到其他场景的 UITabBarController。我收到以下错误:

[ERROR] FATAL UNHANDLED EXCEPTION: System.NullReferenceException: Object reference not set   to an instance of an object

我假设我收到此错误是因为我没有为我的 HomeTabBarNavigator 的 ViewControllers 属性定义任何视图。我希望这些观点已经被定义,但似乎并非如此。任何想法。

【问题讨论】:

【参考方案1】:

我能找到的最佳解决方案是在控制器上调用 PerformSegue。下面是一些示例代码:

this.PerformSegue("LoginSegue",this);

加载的控制器是LoginController,LoginSegue是一个指向HomeTabBarNavigator的Segue。虽然它并不完美,但应用程序正确加载了标签栏。

我使用这个stackoverlflow ios question 作为我的解决方案的基础。

【讨论】:

以上是关于如何使用 Monotouch 在 iPad 故事板应用程序中以编程方式管理视图的主要内容,如果未能解决你的问题,请参考以下文章

尝试从 monotouch 打开故事板给我一个错误

MvvmCross 是不是支持故事板

iOS 自动布局:如何在 Xcode 故事板中为 iPad 横向和 iPad 纵向设计不同的布局?

如何在不为 iphone 和 ipad 创建单独的 xib 的情况下为所有 ipad 和 iphone 创建通用 xib?不是故事板

使用 splitViewController 在 iPad 故事板上出现黑屏

iPad SplitViewController - 使用 iPhone 故事板 ViewController