BMYScrollableNavigationBar 1.0.0

BMYScrollableNavigationBar 1.0.0

TestsTested
LangLanguage Obj-CObjective C
License BSD 3.0
ReleasedLast Release Dec 2014

Maintained by Alberto De Bortoli.



  • By
  • Alberto De Bortoli

Facebook-style scrollable navigation bar as used in the Beamly iOS app.

1

This version of the scrollable navigation bar feature is an evolution on Valentin Shergin's SherginScrollableNavigationBar. There are a few open source components (1, 2, 3, 4) for iOS but all of them suffer of different issues (included the original SherginScrollableNavigationBar) and work only with translucent or opaque navigation bars.

This version aims to support both translucent and opaque navigation bars.

Try out the included demo project or just run pod try BMYScrollableNavigationBar to give it a try.

Simple usage:

  • copy all the classes in the BMYScrollableNavigationBar folder into your project or install via CocoaPods adding the following line to your Podfile
pod "BMYScrollableNavigationBar"
  • import BMYScrollableNavigationBar.h where the navigation controller of your view controller is created

  • when creating your UINavigationViewController, do the following

UINavigationController *navigationController = [[UINavigationController alloc] initWithNavigationBarClass:[BMYScrollableNavigationBar class] toolbarClass:nil];
[navigationController setViewControllers:@[myViewController] animated:NO];
  • import BMYScrollableNavigationBarViewController.h in your UIViewController and make it inherit from BMYScrollableNavigationBarViewController

  • make sure the scrollview has the following autoresizingMask:

self.scrollView.autoresizingMask = UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth;
  • after setting the frame on the scrollview, in the viewDidLoad, add the following line:
[self bindNavigationBarToScrollView:self.scrollView];

Licensing

This project is licensed under the BSD 3-Clause license

Contributions

Note that we are not accepting pull requests at this time.