Skip to content
JZNavigationExtension integrates some convenient features for UINavigationController and easy to use.
Branch: master
Clone or download
Latest commit e5bbc64 Nov 30, 2017
Type Name Latest commit message Commit time
Failed to load latest commit information.
JZNavigationExtension Minor fix Nov 30, 2017
JZNavigationExtensionDemo Readme&podspec Nov 30, 2017
.DS_Store Readme&podspec Nov 30, 2017
LICENSE Readme&podspec Nov 30, 2017


Version Platform License

JZNavigationExtension integrates many convenient features for UINavigationController.


Version 2

New cleaner File Struct and safer Implementation.





Why JZNavigationExtension?

  • Full Screen Pop Gesture Works Perfect With UITableView【全屏Pop手势完美匹配UITableView无冲突】
  • Two navigation bar transition style extension. 【两种导航栏动画拓展】
  • Enable or disable property for each view controller conveniently.【简单地针对每一个Controller开关属性】
  • Pushes/Pops a view controller when hides/shows navigation bar display soomthly【当控制器做Push/Pop时无缝、平滑地显隐导航栏】
  • Release some restrictions make your navigation controller stronger【解除一些限制,使你的导航控制器更加强大】
  • Follow Apple's API design principles,uses as natural as system api【遵循Apple Inc的API设计原则,使用就像系统API一样自然】


To gives you a fullscreen interactivePopGestureRecognizer【打开全屏Pop手势】:

navigationController.jz_fullScreenInteractivePopGestureEnabled = YES;

Set a completion for fullscreen interactivePopGestureRecognizer【全屏Pop手势回调】:

[self.navigationController jz_setInteractivePopGestureRecognizerCompletion:^(BOOL finished) {
        if (finished) {
            // Codes

Change navigation bar transition style 【改变导航栏动画】:

navigationController.jz_navigationBarTransitionStyle = JZNavigationBarTransitionStyleDoppelganger

To hides navigation bar when the view controller is pushed on to a navigation controller【支持转场隐藏、显示导航栏】:

UIViewController *viewController = [UIViewController new];
viewController.jz_navigationBarHidden = YES;
[self.navigationController pushToViewController:viewController animated:YES];

To Push/Pop view controller With blocks【导航控制器转场回调】:

[self.navigationController jz_pushViewController:viewController animated:YES completion:^(BOOL finished) {
		///Do any thing

To adjust navigation/tool bar background alpha【调节导航控制器的导航栏、工具条透明度】:

navigationController.jz_navigationBarBackgroundAlpha = yourAlpha;

To change navigation/tool bar size【改变导航控制器的导航栏、工具条大小】:

[navigationController setJz_navigationBarSize:size];

To hide navigation bar background alpha during pop gesture is interactiving【导航栏手势交互时改变导航栏透明度】

UIViewController *viewController = [UIViewController new];
viewController.jz_navigationBarBackgroundHidden = YES;


Change navigation bar tint color by different view controller【导航栏手势交互时改变导航栏颜色】

UIViewController *viewController = [UIViewController new];
viewController.jz_navigationBarTintColor = [UIColor redColor];


Many other features please look up public header files...





Use cocoapods

pod 'JZNavigationExtension'


Drag all source files under floder JZNavigationExtension to your project.

Apps using this library

If you've used this project in a live app, please let me know! Nothing makes me happier than seeing someone else take my work and go wild with it. If you are using JZNavigationExtension in your app or know of an app that uses it, please add it to this list.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.