diff --git a/SlideMenu.xcodeproj/project.pbxproj b/SlideMenu.xcodeproj/project.pbxproj index 20fcb7a..9bac8d3 100644 --- a/SlideMenu.xcodeproj/project.pbxproj +++ b/SlideMenu.xcodeproj/project.pbxproj @@ -27,10 +27,10 @@ 15CBD67C172A15F900F0C53E /* HomeViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 15CBD677172A15F900F0C53E /* HomeViewController.m */; }; 15CBD67D172A15F900F0C53E /* MenuViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 15CBD679172A15F900F0C53E /* MenuViewController.m */; }; 15CBD67E172A15F900F0C53E /* ProfileViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 15CBD67B172A15F900F0C53E /* ProfileViewController.m */; }; - 15CBD684172A20DA00F0C53E /* left-menu-button.png in Resources */ = {isa = PBXBuildFile; fileRef = 15CBD682172A20DA00F0C53E /* left-menu-button.png */; }; - 15CBD685172A20DA00F0C53E /* right-menu-button.png in Resources */ = {isa = PBXBuildFile; fileRef = 15CBD683172A20DA00F0C53E /* right-menu-button.png */; }; 15CBD689172A22B700F0C53E /* ProfileDetailViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 15CBD688172A22B700F0C53E /* ProfileDetailViewController.m */; }; 15CBD699172A57F100F0C53E /* QuartzCore.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 15CBD698172A57F100F0C53E /* QuartzCore.framework */; }; + 15CBD6BE172BBB3600F0C53E /* menu-button@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 15CBD6BD172BBB3600F0C53E /* menu-button@2x.png */; }; + 15CBD6C0172BBB7100F0C53E /* menu-button.png in Resources */ = {isa = PBXBuildFile; fileRef = 15CBD6BF172BBB7100F0C53E /* menu-button.png */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -73,11 +73,11 @@ 15CBD679172A15F900F0C53E /* MenuViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MenuViewController.m; sourceTree = ""; }; 15CBD67A172A15F900F0C53E /* ProfileViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProfileViewController.h; sourceTree = ""; }; 15CBD67B172A15F900F0C53E /* ProfileViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProfileViewController.m; sourceTree = ""; }; - 15CBD682172A20DA00F0C53E /* left-menu-button.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "left-menu-button.png"; sourceTree = ""; }; - 15CBD683172A20DA00F0C53E /* right-menu-button.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "right-menu-button.png"; sourceTree = ""; }; 15CBD687172A22B600F0C53E /* ProfileDetailViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ProfileDetailViewController.h; sourceTree = ""; }; 15CBD688172A22B700F0C53E /* ProfileDetailViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = ProfileDetailViewController.m; sourceTree = ""; }; 15CBD698172A57F100F0C53E /* QuartzCore.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = QuartzCore.framework; path = System/Library/Frameworks/QuartzCore.framework; sourceTree = SDKROOT; }; + 15CBD6BD172BBB3600F0C53E /* menu-button@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "menu-button@2x.png"; sourceTree = ""; }; + 15CBD6BF172BBB7100F0C53E /* menu-button.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "menu-button.png"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -211,8 +211,8 @@ 15CBD681172A209500F0C53E /* Assets */ = { isa = PBXGroup; children = ( - 15CBD682172A20DA00F0C53E /* left-menu-button.png */, - 15CBD683172A20DA00F0C53E /* right-menu-button.png */, + 15CBD6BF172BBB7100F0C53E /* menu-button.png */, + 15CBD6BD172BBB3600F0C53E /* menu-button@2x.png */, ); path = Assets; sourceTree = ""; @@ -294,8 +294,8 @@ 15371EF91728E3B400A508F4 /* Default-568h@2x.png in Resources */, 15371EFC1728E3B400A508F4 /* MainStoryboard_iPhone.storyboard in Resources */, 15371EFF1728E3B400A508F4 /* MainStoryboard_iPad.storyboard in Resources */, - 15CBD684172A20DA00F0C53E /* left-menu-button.png in Resources */, - 15CBD685172A20DA00F0C53E /* right-menu-button.png in Resources */, + 15CBD6BE172BBB3600F0C53E /* menu-button@2x.png in Resources */, + 15CBD6C0172BBB7100F0C53E /* menu-button.png in Resources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/SlideMenu/Source/Assets/left-menu-button.png b/SlideMenu/Source/Assets/left-menu-button.png deleted file mode 100644 index cf504cd..0000000 Binary files a/SlideMenu/Source/Assets/left-menu-button.png and /dev/null differ diff --git a/SlideMenu/Source/Assets/menu-button.png b/SlideMenu/Source/Assets/menu-button.png new file mode 100644 index 0000000..4a4d467 Binary files /dev/null and b/SlideMenu/Source/Assets/menu-button.png differ diff --git a/SlideMenu/Source/Assets/menu-button@2x.png b/SlideMenu/Source/Assets/menu-button@2x.png new file mode 100644 index 0000000..08dc402 Binary files /dev/null and b/SlideMenu/Source/Assets/menu-button@2x.png differ diff --git a/SlideMenu/Source/Assets/right-menu-button.png b/SlideMenu/Source/Assets/right-menu-button.png deleted file mode 100644 index cf504cd..0000000 Binary files a/SlideMenu/Source/Assets/right-menu-button.png and /dev/null differ diff --git a/SlideMenu/Source/SlideNavigationController.h b/SlideMenu/Source/SlideNavigationController.h index c417617..0d66769 100644 --- a/SlideMenu/Source/SlideNavigationController.h +++ b/SlideMenu/Source/SlideNavigationController.h @@ -24,6 +24,8 @@ typedef enum{ @property (nonatomic, strong) UIViewController *righMenu; @property (nonatomic, strong) UIViewController *leftMenu; +@property (nonatomic, strong) UIBarButtonItem *leftbarButtonItem; +@property (nonatomic, strong) UIBarButtonItem *rightBarButtonItem; + (SlideNavigationController *)sharedInstance; - (void)switchViewController:(UIViewController *)viewController withCompletion:(void (^)())completion; diff --git a/SlideMenu/Source/SlideNavigationController.m b/SlideMenu/Source/SlideNavigationController.m index 06629b1..feee0dc 100644 --- a/SlideMenu/Source/SlideNavigationController.m +++ b/SlideMenu/Source/SlideNavigationController.m @@ -20,12 +20,13 @@ @synthesize tapRecognizer; @synthesize panRecognizer; @synthesize draggingPoint; +@synthesize leftbarButtonItem; +@synthesize rightBarButtonItem; #define MENU_OFFSET 60 #define MENU_SLIDE_ANIMATION_DURATION .3 #define MENU_QUICK_SLIDE_ANIMATION_DURATION .1 -#define MENU_LEFT_IMAGE @"left-menu-button" -#define MENU_RIGHT_IMAGE @"left-menu-button" +#define MENU_IMAGE @"menu-button" static SlideNavigationController *singletonInstance; @@ -116,22 +117,18 @@ static SlideNavigationController *singletonInstance; - (UIBarButtonItem *)barButtonItemForMenu:(Menu)menu { SEL selector = (menu == MenuLeft) ? @selector(leftMenuSelected:) : @selector(righttMenuSelected:); - UIImage *image = [UIImage imageNamed:(menu == MenuLeft) ? MENU_LEFT_IMAGE : MENU_RIGHT_IMAGE]; + UIBarButtonItem *customButton = (menu == MenuLeft) ? self.leftbarButtonItem : self.rightBarButtonItem; - if (image) + if (customButton) { - UIButton *button = [UIButton buttonWithType:UIButtonTypeCustom]; - [button setImage:image forState:UIControlStateNormal]; - button.frame = CGRectMake(0, 0, image.size.width, image.size.height); - [button addTarget:self action:selector forControlEvents:UIControlEventTouchUpInside]; - - return [[UIBarButtonItem alloc] initWithCustomView:button]; + customButton.action = selector; + customButton.target = self; + return customButton; } else { - return [[UIBarButtonItem alloc] initWithBarButtonSystemItem:UIBarButtonSystemItemBookmarks - target:self - action:selector]; + UIImage *image = [UIImage imageNamed:MENU_IMAGE]; + return [[UIBarButtonItem alloc] initWithImage:image style:UIBarButtonItemStylePlain target:self action:selector]; } }