iOS view controller shows left and right views on top of everything by pressing button or gesture.
Download repository, then add LGSideMenuController directory to your project.
CocoaPods is a dependency manager for Objective-C, which automates and simplifies the process of using 3rd-party libraries in your projects. To install with cocoaPods, follow the "Get Started" section on CocoaPods.
platform :ios, '6.0'
pod 'LGSideMenuController', '~> 1.0.0'
Carthage is a lightweight dependency manager for Swift and Objective-C. It leverages CocoaTouch modules and is less invasive than CocoaPods. To install with carthage, follow the instruction on Carthage.
github "Friend-LGA/LGSideMenuController" ~> 1.0.0
In the source files where you need to use the library, import the header file:
#import "LGSideMenuController.h"
- (instancetype)initWithRootViewController:(UIViewController *)rootViewController;
To enable left or right or both views call:
- (void)setLeftViewEnabledWithWidth:(CGFloat)width
presentationStyle:(LGSideMenuPresentationStyle)presentationStyle
alwaysVisibleOptions:(LGSideMenuAlwaysVisibleOptions)alwaysVisibleOptions; // for example you can make view always visible on ipad landscape orientation
- (void)setRightViewEnabledWithWidth:(CGFloat)width
presentationStyle:(LGSideMenuPresentationStyle)presentationStyle
alwaysVisibleOptions:(LGSideMenuAlwaysVisibleOptions)alwaysVisibleOptions; // for example you can make view always visible on ipad landscape orientation
ViewController *viewController = [ViewController new];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:viewController];
LGSideMenuController *sideMenuController = [[LGSideMenuController alloc] initWithRootViewController:navigationController];
[sideMenuController setLeftViewEnabledWithWidth:250.f
presentationStyle:LGSideMenuPresentationStyleScaleFromBig
alwaysVisibleOptions:0];
TableViewController *leftViewController = [TableViewController new];
[sideMenuController.leftView addSubview:leftViewController.tableView];
Here is also some notifications, that you can add to NSNotificationsCenter:
kLGSideMenuControllerWillShowLeftViewNotification;
kLGSideMenuControllerWillDismissLeftViewNotification;
kLGSideMenuControllerDidShowLeftViewNotification;
kLGSideMenuControllerDidDismissLeftViewNotification;
kLGSideMenuControllerWillShowRightViewNotification;
kLGSideMenuControllerWillDismissRightViewNotification;
kLGSideMenuControllerDidShowRightViewNotification;
kLGSideMenuControllerDidDismissRightViewNotification;
For more details try Xcode Demo project and see LGSideMenuController.h
LGSideMenuController is released under the MIT license. See LICENSE for details.