测试已测试 | ✓ |
语言语言 | Obj-CObjective C |
许可证 | MIT |
发布时间最后发布时间 | 2015 年 3 月 |
由 Romans Karpelcevs 维护。
CVKHierarchySearcher 是一个小型实用工具类,用于遍历 iOS 应用程序中的视图控制器层次结构,并检索常用顶级视图控制器。目前它提供顶级、顶级非模态和顶级 UINavigationController
。
使用它非常简单。只需在需要时实例化对象,并请求指定的视图控制器
CVKHierarchySearcher *hierarchy = [[CVKHierarchySearcher alloc] init];
UIViewController *topmost = hierarchy.topmostViewController;
类依赖于 -[UIApplicationDelegate window]
,如果失败,则使用 -[UIApplication keyWindow]
。这对我是有效的,但如果某些类型的应用程序需要另一种回退,请告知我。
为了进行模拟,CVKHierarchySearcher
实现了一个协议 ViewControllerHierarchy
而不是直接提供所有方法。出于相同的目的,这些方法在实例上而不是在类上。虽然这使直接使用稍微复杂一点,但它提供了比处理在顶部显示新控制器的实际类更容易的测试。
有关如何轻松注入此对象并利用仅接口的方法,请参阅 CVKInjector
。
iOS 7 及以上。我正在使用和测试 iOS 7+,但如果有人可以在 iOS 6 上测试并需要它,请提交 PR。
CVKHierarchySearcher 可通过 CocoaPods 获得。要安装它,只需将以下行添加到您的 Podfile 中
pod 'CVKHierarchySearcher'
Romans Karpelcevs, [email protected]
CVKHierarchySearcher 可在 MIT 许可证下使用。有关更多信息,请参阅 LICENSE 文件。