我想在pkrevealcontroller滑动菜单集成到具有与塞格斯现有的情节串连图板,等我伸出UINavigationViewController和链接我的新类导航控制器上的脚本中现有的iOS项目。 在我的应用程序委托我做到以下几点:
MainNavViewController *frontViewController = [[MainNavViewController alloc] initWithRootViewController:[[myRootViewController alloc] init]];
UIViewController *rightViewController = [[menuViewController alloc] init];
self.revealController = [PKRevealController revealControllerWithFrontViewController:frontViewController
rightViewController:rightViewController
options:nil];
self.window.rootViewController = self.revealController;
当我运行应用程序,它成功地增加了滑动菜单图标,导航栏,以及幻灯片FrontView的,我想它。 但它不使用标题或塞格斯我对故事板添加。 就是我想甚至有可能。
我认为问题是,你实例化一个新的frontViewController - 这不是一个在你的故事板。 我不完全知道如何做到这一点,但我会尝试像这样。 我会在故事板上添加一个UIViewController - 改变其类PKRevealController,并使其在故事板最初的控制器,但不要把它挂到场景的其余部分。 给你的MainNavViewController在IB的标识符,那么在你的应用程序代理更改代码这样:
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
self.revealController = (PKRevealController *)self.window.rootViewController;
UIViewController *rightViewController = [[menuViewController alloc] init];
MainNavViewController *frontViewController = [[UIStoryboard storyboardWithName:@"MainStoryboard" bundle:nil] instantiateViewControllerWithIdentifier:@"frontViewController"];
[self.revealController setFrontViewController:frontViewController];
[self.revealController setRightViewController:rightViewController];
return YES;
}
我的应用程序的委托不具备revealController
变量所以不得不创建手册,就是你有什么呢?
在斯威夫特利用这一点,
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
var frontViewController:UIViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("frontVC") as! UIViewController
var leftViewController:UIViewController = UIStoryboard(name: "Main", bundle: nil).instantiateViewControllerWithIdentifier("leftVC") as! UIViewController
var revealController:PKRevealController = PKRevealController(frontViewController: frontViewController, leftViewController: leftViewController)
self.window?.rootViewController = revealController
return true
}