2013-03-13 110 views
3

我想在我的项目中使用storyboard来实现JASidePanels。你可以在这里看到我的故事板。JASidepanels not displayed navigationbutton

enter image description here

的问题是,我没有看到在导航栏按钮显示leftpanel。在我的RootViewController中,我使用了代码。

-(void) awakeFromNib 
{ 
    [self setLeftPanel:[self.storyboard instantiateViewControllerWithIdentifier:@"leftViewController"]]; 
    [self setCenterPanel:[self.storyboard instantiateViewControllerWithIdentifier:@"centerViewController"]]; 
    [self setRightPanel:[self.storyboard instantiateViewControllerWithIdentifier:@"rightViewController"]]; 
     self.shouldResizeLeftPanel = YES; 
    self.shouldResizeRightPanel = YES; 
    [self setRightFixedWidth:300.0f]; 
    [self setLeftFixedWidth:300.0f]; 

} 

我遵循了他们在github page上说的步骤。 另外,当我尝试嵌入RootviewControllernavigationController。它显示的是navigationBar,但不是barbutton item

对此有何帮助?

回答

9

嵌入你的心的UIViewController在故事板到UINavigationController的,例如:

  1. 选择的UIViewController在故事板
  2. 选择Xcode的菜单编辑器 - 嵌入 - 导航控制器
  3. 选择新的UINavigationController的身份检查(Alt键-Command-3)
  4. 赋予StoryBoard ID唯一的名称eg myCenterController
  5. 使用该名称创建中央面板

    [自setCenterPanel:[self.storyboard instantiateViewControllerWithIdentifier:@ “myCenterController”]];

所以你实际上并没有将viewController设置为centerPanel,而是一个包含viewController的导航控制器。

+0

完美,作品像一个魅力! – CGR 2016-11-24 17:24:28

0

好吧,我使用的是swift 2.2,我也看不到导航按钮。

我正在使用故事板;所以我创建:

  • MainViewController - >这将是主容器
  • LeftMenuViewController - >这是在左边的菜单
  • ProductsViewController - >这将是内MainViewController

所以在MainViewController,我建立了我的VC如下:

self.leftPanel = self.storyboard?.instantiateViewControllerWithIdentifier("LeftMenuViewController") //for left menu and 

self.centerPanel = UINavigationController.init(rootViewController: (self.storyboard?.instantiateViewControllerWithIdentifier("ProductsViewController"))!) 

添加UINavigationController.init将解决这个问题,你会看到在中央面板上的导航按钮。