【发布时间】:2017-08-11 18:48:12
【问题描述】:
我有 2 个故事板:Activities.storyboard 和 Contacts.storyboard。
在 Contacts.storyboard 我有一个 ViewController:ContactDetails。
在Activities.storyboard 上,我需要在Contacts.storyboard 中引用ContactDetails
我在Activities.storyboard 上创建了一个Storyboard Reference 并引用了ContactDetails。
我尝试以编程方式加载此视图控制器
var viewController = Storyboard.InstantiateViewController(nameof(ContactDetails));
NavigationController.PushViewController(viewController, true);
但我没有工作以编程方式加载为普通视图控制器
Foundation.MonoTouchException:抛出 Objective-C 异常。姓名: NSInvalidArgumentException 原因:Storyboard () 不包含带有标识符的视图控制器 '联系方式'
我知道它是这样工作的:
var storyboard = UIStoryboard.FromName(nameof(Contact), null);
var viewController = storyboard.InstantiateViewController(nameof(ContactDetails));
NavigationController.PushViewController(viewController, true);
但是我想使用参考视图控制器,可以吗?
【问题讨论】:
-
我相当肯定,在尝试从应用程序故事板实例化时,使用名为“故事板 ID”的 UIViewController 的属性更为常见,此故事板 ID 也可以用作“恢复标识符”。
标签: ios xamarin xamarin.ios storyboard-reference