CNPPopupController 0.3.3

CNPPopupController 0.3.3

测试已测试
语言语言 Obj-CObjective C
许可证 Apache 2
发布上次发布2016 年 9 月

Carson Perrotti 维护。




Dependency Status

简介

CNPPopupController 是一个用于以各种方式呈现自定义弹窗的简单而灵活的类。它包括许多选项来控制弹窗的显示和行为。

请随时向此项目贡献力量,提出问题,提出建议,提交拉取请求。如果您在应用程序中使用了此项目,请告诉我。我很乐意看看您如何使用它。

安装

CocoaPods 中可用

pod 'CNPPopupController'

用法

(请在 /CNPPopupControllerExample 中的样本 Xcode 项目中查看)

创建弹窗

创建具有自定义动画和行为的弹窗。也可以通过 CNPPopupTheme 实例的属性来访问自定义

- (instancetype)initWithContents:(NSArray *)contents;

contents 只接受 UIView 对象的数组。

呈现

- (void)presentPopupControllerAnimated:(BOOL)flag;

- (void)dismissPopupControllerAnimated:(BOOL)flag;

自定义

可以创建一个 CNPPopupTheme 实例并将其分配给 CNPPopupController 实例的 theme 属性。

@property (nonatomic, strong) UIColor *backgroundColor;

@property (nonatomic, assign) CGFloat cornerRadius;

@property (nonatomic, assign) UIEdgeInsets popupContentInsets;

@property (nonatomic, assign) CNPPopupStyle popupStyle;

@property (nonatomic, assign) CNPPopupPresentationStyle presentationStyle;

@property (nonatomic, assign) CNPPopupMaskType maskType;

@property (nonatomic, assign) BOOL dismissesOppositeDirection;

@property (nonatomic, assign) BOOL shouldDismissOnBackgroundTouch;

@property (nonatomic, assign) BOOL movesAboveKeyboard;

@property (nonatomic, assign) CGFloat contentVerticalPadding;

@property (nonatomic, assign) CGFloat maxPopupWidth;

@property (nonatomic, assign) CGFloat animationDuration;

备注

部署

CNPPopupController 支持 iOS 6 - iOS 10

致谢

CNPPopupController 由 Carson Perrotti 创建

版本历史

2016年9月15日 v0.3.3

  • 内容布局修复
  • 更好的 Swift 支持

2016年7月14日 v0.3.2

  • 修复了内容无法完美居中的问题。
  • 修复了项目兼容性问题,以防止 重复符号 错误。
  • 添加了调整动画过渡持续时间的属性。

2015年9月13日 v0.3.1

  • 在默认主题中将 movesAboveKeyboard 设置为 YES

2015年9月11日 v0.3.0

  • 支持 iOS 9 和一些错误修复。

2015年8月30日 v0.2.3

  • 将最低要求的操作系统版本降低到 6.0,因为在那里它仍然可以使用。

2015年8月16日 v0.2.2

  • 修复了在呈现时弹出窗口居中显示的 bug。感谢 Nicholas 对此的积极帮助。

2015年6月14日 v0.2.0

  • 完全重写。 从低处开始,现在我们在这里。
  • 在 v0.2.0 中有一些小的 API 变化。我尽量使其尽可能接近上一个版本。如果您需要帮助设置,请查看示例项目。
  • 自定义视图支持(您可以添加任何东西,只要它是 UIView 或 UIView 的子类
  • 很多错误修复