如果对此库感兴趣的同学,可以到github上下载最新代码https://github.com/chenliangloveyou/EasyNavigation
希望能给个start,start越多我才有动力把更好的库奉献给大家。我们一起来完善这个库。感谢!
# EasyNavigation
一款超级简单的导航条管理工具。完全自定义导航条。没有`UINavigationBar` 和 `UINavigationItem` 这两个类。完全是对`UIView`的操作。
所有操作都能一行代码,操作之间完全独立,互不影响。
# 操作介绍
## 配置全局导航栏属性
这一步操作可以确保每一个控制器上头都有一个自定义的导航条。
* (1) 包涵头文件
* (2) (可省略)改变一些导航条的全局设置,但是如果省略的就会默认使用其单例里面的设置信息
* (3) 用navigationcontroller包裹controller的时候,使用EasyNavigationController。如果是tabbar的话,开题报告,则tabbar的每一个item都需要使用EasyNavigationController。如果使用的xib,则需要把xib中的导航控制器改成EasyNavigationController。
```
//(1)包涵头文件
#import 'EasyNavigation.h'
```
```
- (BOOL)applicationUIApplication *)application didFinishLaunchingWithOptionsNSDictionary *)launchOptions {
//(2)(可省略)改变一些导航条的全局设置,论文,但是如果省略的就会默认使用其单例里面的设置信息
EasyNavigationOptions *options = [EasyNavigationOptions shareInstance];
options.titleColor = [UIColor blackColor];
options.buttonTitleFont = [UIFont systemFontOfSize:18];
options.navBackgroundImage = [UIImage imageNamed'nav_background_image.png'];
//(3) 用navigationcontroller包裹controller的时候,使用EasyNavigationController。如果是tabbar的话,则tabbar的每一个item都需要使用EasyNavigationController。如果使用的xib,则需要把xib中的导航控制器改成EasyNavigationController。
EasyNavigationController *navVC = [[EasyNavigationController alloc]initWithRootViewController:[ViewController new]];
self.window.rootViewController = navVC ;
return YES;
}
由于这个库的原理是隐藏系统导航条,自定义一个`view`作为导航条,所以有2点需要注意点地方。
1,self.automaticallyAdjustsScrollViewInsets = NO ;
2,控制器中的view会从左上角的{0,0}开始计算。
在添加视图的时候,可以重导航条高度的下面开始添加。
当为scrollview的时候可以设置。`scrollview.contentInset = UIEdgeInsetsMake(64, 0, 0, 0);` 也就是向下收缩导航条高度的距离。