2014-10-08 47 views
0

我挣扎在一个非常奇怪的情况:我创建了一个UISplitViewControllerUISplitViewController创建程序没有滑动手势显示/隐藏主

self.splitViewController = [[UISplitViewController alloc] init]; 
self.splitViewController.presentsWithGesture = YES; 

UIViewController * master = [[UIViewController alloc] init]; 
master.view.backgroundColor = [UIColor yellowColor]; 
UINavigationController * navMaster = [[UINavigationController alloc] initWithRootViewController:master]; 

UIViewController * detail = [[UIViewController alloc] init]; 
detail.view.backgroundColor = [UIColor redColor]; 
UINavigationController * navDetail = [[UINavigationController alloc] initWithRootViewController:detail]; 

self.splitViewController.viewControllers = @[navMaster,navDetail]; 

self.window.rootViewController = self.splitViewController; 
[self.window makeKeyAndVisible]; 

,但(在邮件应用程序等)的滑动手势打开/显示主视图控制器不适用于iOS7,但适用于iOS8。如果我从主/细节模板创建一个新项目,该手势起作用。但我需要以编程方式创建UISplitViewController,因为我必须在正常视图控制器的登录页面后添加。我不想使用故事板,因为在这个应用程序中会太大。

回答

1

我遇到同样的问题,发现如何使它工作这真棒教程:New UISPlitViewController and iOS7

有了这个,你也可以使用尺寸等级,并且只使用1个故事板,支持iPhone以及走iPhone的优势6+横向分割视图功能。

注意:如果要使用Size Classes并且仍然支持iOS 7,则必须使用Storyboard。(如果通过代码使用它们,则不存在向后兼容性)