当程序需要显示具有层次化的界面,帮助我们跳转页面的时候,需要使用UINavigationController
导航控制器的创建及使用
- 构造方法
1. 通过自定义 NavigationBar 来创建 UINavigationController
- (instancetype)initWithNavigationBarClass:(nullable Class)navigationBarClass toolbarClass:(nullable Class)toolbarClass;
2. 通过设置根控制器创建
- (instancetype)initWithRootViewController:(UIViewController *)rootViewController;
- 常用属性
1. 栈顶控制器
@property(nullable, nonatomic,readonly,strong) UIViewController *topViewController;
2. 可见控制器
@property(nullable, nonatomic,readonly,strong) UIViewController *visibleViewController;
3. 栈当中的控制器数组
@property(nonatomic,copy) NSArray<__kindof UIViewController *> *viewControllers;
4. 控制器当中的上控制栏
@property(nonatomic,readonly) UINavigationBar *navigationBar;
5. 控制器当中的底栏
@property(null_resettable,nonatomic,readonly) UIToolbar *toolbar;
6. 代理对象
@property(nullable, nonatomic, weak) id<U