SCNavigationController 是一个类似于 UINavigationController 的容器视图控制器,旨在提供并暴露更多功能和控制。它特别有助于通过布局器和自定义计时函数来自定义推送/弹出动画,并通过完成块了解这些动画何时完成。
它是在 SCStackViewController 的基础上构建的,因此它支持并建立在以下功能之上
支持通过自定义布局器、缓动函数和动画持续时间来自定义过渡和动画(以下是一些示例)
为所有堆栈相关操作提供完成块
允许在根视图控制器的顶部、左侧、底部或右侧堆叠视图控制器
不仅为弹出操作,还为完整堆栈导航公开一个交互式手势识别器,并允许更改此手势的触发区域
等等...
#import "SCNavigationController.h"
navigationController = [[SCNavigationController alloc] initWithRootViewController:rootViewController];
id<SCStackLayouterProtocol> layouter = [[SCParallaxStackLayouter alloc] init];
[navigationController setLayouter:layouter];
[self.navigationController pushViewController:viewController animated:YES completion:nil];
[self.navigationController popViewControllerAnimated:YES completion:nil];
[self.navigationController popToViewController:viewController animated:YES completion:nil];
[self.navigationController popToRootViewControllerAnimated:YES completion:nil];
更多详情请查看演示项目(pod try)
SCNavigationController 在 MIT 许可证(MIT)下发布(请参阅 LICENSE 文件)
欢迎提出建议或改进。请随时通过以下方式联系我:[email protected] 或者 @stefanceriu。