测试已测试 | ✗ |
语言语言 | SwiftSwift |
许可证 | MIT |
发布最后发布 | 2017年1月 |
SwiftSwift 版本 | 3.0 |
SPM支持 SPM | ✗ |
由 Nishant Bhasin 维护。
自定义导航控制器,允许除了推送和弹出之外更多的过渡。
iOS 8+ 和 Xcode 8(用于 Swift 3.0)。
下载并复制 NBNavigationController 文件夹,然后在 Xcode 项目中添加。
在具有对 navigationController 访问权限的类中声明一个全局 NBNavigationController
let transitionController = NBNavigationController()
当您想使用带有自定义过渡的推送视图时,在您函数中使用以下内容。
let yourViewController = yourViewController()
let customTransition = FadeInTransition(transitionDuration: 10.0)
transitionController.pushViewController(yourViewController, ontoNavigationController: self.navigationController!, animatedTransition: customTransition)
您可以指定一个持续时间,也可以让它默认为 1.0 秒的时间间隔。
FadeInTransition(transitionDuration: 10.0)
或者
FadeInTransition() FadeOutTransition() BottomUpTransition() TopDownTransition()
查看 ExampleGobstonesSwift 项目。在项目中查找 ViewControllers 下的 InitialViewController.swift。它展示了如何在您的项目中实现自定义过渡。
func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {
let gifViewController = GifViewController(barType: .SemiTransparent, title: navigationItems[indexPath.item], shouldPop: true)
let customTransition:UIViewControllerAnimatedTransitioning!
switch indexPath.item {
case 0:
customTransition = FadeInTransition(transitionDuration: 10.0)
case 1:
customTransition = BottomUpTransition()
case 2:
customTransition = TopDownTransition()
default:
customTransition = FadeInTransition()
}
transitionController.pushViewController(gifViewController, ontoNavigationController: self.navigationController!, animatedTransition: customTransition)
}
该项目遵守 MIT 许可。有关更多详细信息,请参阅 LICENSE 文件。