BUKDynamicPopView 是 UIView 的类别。这使得任何视图都可以像动态弹出视图一样进行动画。您可以专注于您的视图,并让 BUKDynamicPopView 为您动画视图。
您还可以自定义动画,同时我们为您提供了某些简单样式。使用这些样式,您可以在任何地方使用 BUKDynamicPopView。
BUKDynamicPopView 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile 中
pod "BUKDynamicPopView"
安装后,您在使用前需要导入头文件。
#import <BUKDynamicPopView/BUKDynamicPopView.h>
然后,您可以在任何视图上简单的调用 [someView buk_dynamicShowInView:superView];
。BUKDynamicPopView 将视图添加到父视图并在默认行为和默认样式中为您进行动画。
警告:在显示之前请记得设置视图的 frame。
此外,您可以调用 [someView buk_dynamicHide];
来隐藏视图。
动画样式用于控制不同状态下动态弹出视图的位置,包括显示前的状态、显示状态和隐藏后的状态。
默认动画样式从顶部到中心动画视图,然后从底部退出。但您可能不想始终以这种方式动画化视图。
您可以设置 buk_animationStyle
属性以自定义样式。
BUKExamplePopView *view = [[BUKExamplePopView alloc] initWithFrame:CGRectMake(0, 0, kScreenWidth*0.5, kScreenHeight)];
BUKXOrYMoveAnimationStyle *style = [[BUKXOrYMoveAnimationStyle alloc] initWithView:view];
style.startPosition = BUKRightOuterBorder;
style.showPosition = BUKRightInnerBorder;
style.endPosition = BUKRightOuterBorder;
view.buk_animationStyle = style;
[view buk_dynamicShowInView:nil];
如果 BUKXOrYMoveAnimationStyle
不能满足您的需求,您可以创建自己的样式,该样式符合协议 <BUKDynamicAnimationStyle>
。
行为用于控制动画。默认行为使用UIKit Dynamics的UIGravityBehavior
和UICollisionBehavior
进行动画。
您可以创建符合协议<BUKDynamicBehavior>
的自定义行为,然后将该行为分配给属性buk_dynamicShowBehavior
或buk_dynamicHideBehavior
。
有关更多详细信息,您可以在源代码中查看注释。
hyice, [email protected]
BUKDynamicPopView在MIT许可证下可用。有关更多信息,请参阅LICENSE文件。