An animated hamburger button for iOS.
With CocoaPods, add this line to your Podfile.
pod 'JTHamburgerButton', '~> 1.0'
#import <UIKit/UIKit.h>
#import <JTHamburgerButton.h>
@interface ViewController : UIViewController
@property (weak, nonatomic) IBOutlet JTHamburgerButton *button;
@end
#import "ViewController.h"
@implementation ViewController
- (IBAction)didBackButtonTouch:(JTHamburgerButton *)sender
{
if(sender.currentMode == JTHamburgerButtonModeHamburger){
[sender setCurrentModeWithAnimation:JTHamburgerButtonModeArrow];
}
else{
[sender setCurrentModeWithAnimation:JTHamburgerButtonModeHamburger];
}
}
- (IBAction)didCloseButtonTouch:(JTHamburgerButton *)sender
{
if(sender.currentMode == JTHamburgerButtonModeHamburger){
[sender setCurrentModeWithAnimation:JTHamburgerButtonModeCross];
}
else{
[sender setCurrentModeWithAnimation:JTHamburgerButtonModeHamburger];
}
}
@end
The method setCurrentModeWithAnimation
animates the transition from one mode to another. There is also setCurrentMode
which changes the view without transition.
There are three modes:
- JTHamburgerButtonModeHamburger
- JTHamburgerButtonModeArrow
- JTHamburgerButtonModeCross
lineHeight
lineWidth
lineSpacing
lineColor
animationDuration
After the change of one of this properties you have to call updateAppearance
to update the view.
- iOS 7 or higher
- Automatic Reference Counting (ARC)
JTHamburgerButton is released under the MIT license. See the LICENSE file for more info.