• Stars
    star
    110
  • Rank 316,770 (Top 7 %)
  • Language
    Swift
  • License
    MIT License
  • Created over 6 years ago
  • Updated over 3 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

ZSNavigationBar uses category to allow you change UINavigationBar appearance dynamically.(supported iOS 11+ and iPhone X)

ZSNavigationBar中文说明

ZSNavigationBar uses category to allow you change UINavigationBar appearance dynamically.(supported iOS 11+)

Installation

CocoaPods

  • Swift:
  1. Add pod 'ZSNavigationBar' to your Podfile.
  2. Run pod install or pod update.
  3. Import ZSNavigationBar.
  • Objective-c:
  1. Add pod 'ZSNavigationBar-oc' to your Podfile.
  2. Run pod install or pod update.
  3. Import ZSNavigationBar.

Manually

  1. Add all files under Source-oc or Source-swift folder.
  2. Link with required frameworks: UIKit.
  3. If you use oc version, just import UINavigationBar+custom.h.

Requirements

  • iOS 8+
  • Xcode 9+
  • swift 3.0+
  • Objective-c

Usage

  • Swift:

The category includes several methods that helps to change UINavigationBar's appearance dynamically:

func setCustomBackgroundColor(_ backgroundColor: UIColor)
func setCustomTranslationY(translationY: CGFloat)
func reset()

And usually in viewWillDisappear, you should call this method to avoid any side effects:

override func viewWillDisappear(_ animated: Bool) {
  super.viewWillDisappear(animated)
  self.navigationController?.navigationBar.reset()
}
  • Objective-c:

First, import this lib:

#import "UINavigationBar+Custom.h"

The category includes several methods that helps to change UINavigationBar's appearance dynamically

- (void)zs_setBackgroundColor:(UIColor *)backgroundColor;
- (void)zs_setTranslationY:(CGFloat)translationY;
- (void)zs_reset;

And usually in viewWillDisappear, you should call this method to avoid any side effects:

- (void)viewWillDisappear:(BOOL)animated {
  [super viewWillDisappear:animated];
  [self.navigationController.navigationBar zs_reset];
}

License

ZSNavigationBar is available under the MIT license. See the LICENSE file for more info.