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];
    }
}
@endThe 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.
