当我单击其中的按钮时,我试图将 UISplitViewController 作为子视图添加到我的 ViewController 中。它不能正常工作。
这是正确的做法吗?
谢谢
根据评论讨论回答...
您可以将根视图设置为您的另一个视图控制器,然后在完成后将根视图设置为拆分视图控制器。否则你可以玩多个 UIWindows。两者都可能很麻烦,但这是我找到的最好的方法。
一些伪代码。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
self.viewController = [[CWDLoginViewController alloc] initWithNibName:@"CWDLoginViewController" bundle:nil];
self.window.rootViewController = self.viewController;
[self.window makeKeyAndVisible];
return YES;
}
现在我可能会为登录视图控制器创建一个委托或使用通知,告诉您的应用委托它需要更改self.window.rootViewController
为您的UISplitViewController
- (void)loginDidFinish {
CWDSplitViewController *splitViewController = [[CWDSplitViewController alloc] initWithNibName:@"CWDSplitViewController" bundle:nil];
self.window.rootViewController = splitViewController;
}
如果您使用的是故事板,则可以使用
[[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"MyIdentifier"];
替代
[[CWDLoginViewController alloc] initWithNibName:@"CWDLoginViewController" bundle:nil];