2016-09-27 85 views
1

我想要导航栏扩展中的这两个菜单,并在滚动时隐藏除扩展名外的导航栏。页面菜单,滚动时隐藏导航栏

我是能够实现的菜单与PageMenu“PageMenu”和隐藏的导航栏,通过AMScrollingNavbar

enter image description here

但我现在面临的问题是导航栏皮,但意见不动了导航栏

func loadControllers(){ 

    let storyboard = UIStoryboard(name: "Main", bundle: nil) 

    let topViewController = storyboard.instantiateViewControllerWithIdentifier("TopNewsController") as! 
    TopNewsController 

    topViewController.title = "TOP" 
    controllerArray.append(topViewController) 

    let briefViewController = storyboard.instantiateViewControllerWithIdentifier("BriefViewController") as! 
    BriefViewController 

    briefViewController.title = "BRIEFS" 
    controllerArray.append(briefViewController) 


    let videoViewController = storyboard.instantiateViewControllerWithIdentifier("VediosViewController") as! 
    VediosViewController 

    videoViewController.title = "VIDEOS" 
    controllerArray.append(videoViewController) 


    // Customize menu 
    parameters = [ 
     .ScrollMenuBackgroundColor(UIColor.navigationBarColor()), 
     .ViewBackgroundColor(UIColor(red: 20.0/255.0, green: 20.0/255.0, blue: 20.0/255.0, alpha: 1.0)), 
     .SelectionIndicatorColor(UIColor.whiteColor()), 
     .BottomMenuHairlineColor(UIColor(red: 70.0/255.0, green: 70.0/255.0, blue: 80.0/255.0, alpha: 1.0)), 
     .MenuItemFont(UIFont(name: "HelveticaNeue-Bold", size: 14.0)!), 
     .MenuHeight(expressTribuneUtilities.convertIphone6ToIphone5(48)), 
     .MenuItemWidth(90.0), 
     .CenterMenuItems(true) 
    ] 


    AppDelegate.getInstatnce().nav = self.navigationController as! ScrollingNavigationController 
    AppDelegate.getInstatnce().nav.scrollingNavbarDelegate = self 


    // Initialize scroll menu 
    pageMenu = CAPSPageMenu(viewControllers: controllerArray, frame: CGRectMake(0.0, 64.0, self.view.frame.width, self.view.frame.height), pageMenuOptions: parameters) 

    self.view.addSubview(pageMenu!.view) 

} 

enter image description here

呼叫从类这就是滚动方法在菜单

 AppDelegate.getInstatnce().nav.followScrollView(tableMainView, delay: 0.5) 
+0

在最后一行是什么'self.view'。 –

回答

2
AppDelegate.getInstatnce().nav = self.navigationController as! ScrollingNavigationController 
AppDelegate.getInstatnce().nav.scrollingNavbarDelegate = self 

变化都行加入到喜欢这个它不会工作,因为你正在为其他实例,而不是您的导航设置委托。

 let navController = AppDelegate.getInstatnce().window?.rootViewController as! ScrollingNavigationController 
    navController.scrollingNavbarDelegate = self 

实现控制器delgate和你的观点w.r.t您 滚动型设定的原点。