一个允许在视图控制器之间拖动的控件,灵感来自 Circle 应用。
注意:KLCircleViewController 主要用于 iPhone/iPod Touch/iPad 的纵向模式。
需要 ARC
查看演示 请原谅我的电脑较慢导致的图形故障和延迟。
1. Drag the KLCircleViewController.xcodeproj to your existing project
2. Under Build Phases on your project's Xcode Project file add 'KLCircleViewController(KLCircleViewController)' to your Target Dependancies
3. Under Build on your Xcode Project file add 'libKLCircleViewController' & QuartzCore.framework under Link Binary With Libraries
4. Include #import <KLCircleViewController/KLCircleViewController.h> in any file you wish to use
导入头文件,并声明控制器以派生自 KLScrollViewController
#import <KLCircleViewController/KLCircleViewController.h>
...
[[KLCircleViewController alloc] initWithCenterViewController: center
leftViewController: left
rightViewController: right
bottomViewController: bottom];
要省略视图控制器,按如下方式传递 nill
[[KLCircleViewController alloc] initWithCenterViewController: center
leftViewController: left
rightViewController: nil
bottomViewController: nil];
注意:中心视图控制器永远不能为 nil,因为它默认存在
在实例化后删除/未验证视图控制器,将属性设置为 nil
[self.circleViewController setLeftViewController: nil];
注意:如上所述,这不能用于中心视图控制器,因为它必须存在。
已向 UIViewController 添加了一个类别,允许任何 UIViewController 从子类中访问 KLCircleViewController。此引用将仅在子类真正存在于 KLCircleViewController 实例期间的范围内存在。如果 KLCircleViewController 删除了 UIViewController,则它将无法被引用,并返回 nil。
#import "KLCircleViewController.h"
...
KLCircleViewController circleController = self.circleController;
//Do whatever useful things you may need to do with this reference here
所有回调均由块处理。
[self.circleVC setWillTransitionState: ^(KLCircleViewController* circleViewController, KLCircleState fromState,
KLCircleState toState) {
//Do something useful here
}];
[self.circleVC setDidTransitionState:^(KLCircleViewController* circleViewController, KLCircleState fromState,
KLCircleState toState) {
//Do something useful here
}];
使用 Doxygen (http://www.stack.nl/~dimitri/doxygen/download.html) 生成文档,请使用存储库根目录中的 doxygen 文件。
版权所有 2013 Kieran Lafferty
在 Apache License 版本 2.0 (以下简称“许可证”) 之下许可;除非您遵守许可证条款,否则不得使用此文件。您可以在以下位置获得许可证副本:
http://www.apache.org/licenses/LICENSE-2.0
除非适用法律要求或书面同意,否则根据本许可证分发软件是基于“现状”原则,不提供任何形式的明示或暗示保证。具体权限和限制请参见许可证。