克隆仓库,在示例项目中运行 pod install
使用 ILABPopOver 是一个相对简单直接的事情。它有两个模式:作为模态对话框和作为弹窗,类似于 UIPopOverController
或 UIMenuController
。
它由两个类组成,即 ILABPopOverViewController
和 ILABPopOverView
。
ILABPopOverViewController
负责显示弹窗视图,而 ILABPopOverView
简单渲染弹出窗口的“气球”。
在对话框模式下,弹出窗口将以模态弹出显示您的视图
- (IBAction)showDialogPopOver:(id)sender {
[[ILABPopOverViewController sharedDialog] showAsDialog:dialogPopupView];
}
在上面的例子中,dialogPopupView
是一个 UIView 实例,您希望将其显示为弹出窗口的主要内容视图。
要关闭弹出窗口
- (IBAction)dismissDialogTouched:(id)sender {
[[ILABPopOverViewController sharedDialog] dismiss:^{
NSLog(@"DISMISSED");
}];
}
在弹出窗口模式下,您的视图将以气球弹出窗口的形式呈现给用户。
- (IBAction)showPopOver:(id)sender {
[[ILABPopOverViewController sharedPopOver] show:popupView fromView:(UIView *)sender];
}
在上面的例子中,popupView
是您希望显示为主要内容视图的 UIView 实例。
要关闭弹出窗口
- (IBAction)dismissDialogTouched:(id)sender {
[[ILABPopOverViewController sharedDialog] dismiss:^{
NSLog(@"DISMISSED");
}];
}
ILABPopOverViewController
有两个静态共享实例以简化使用。
sharedDialog
静态实例是将弹出窗口显示为对话框的视图控制器。
sharedPopOver
静态实例是显示所有其他弹出窗口的视图控制器。
您应该在应用启动时配置这些实例,以便与您应用程序中适当的结构和行为相匹配。
属性 | 类型 | 描述 |
---|---|---|
popOverView | ILABPopOverView | 视图控制器显示的 ILABPopOverView |
overlayColor | UIColor | 用于叠加背景的颜色 |
showOverlay | BOOL | 确定是否显示叠加层 |
dismissOnBackgroundTap | BOOL | 在背景上点击时关闭弹出窗口 |
showHighlight | BOOL | 确定显示弹窗的视图是否通过将其框架从覆盖背景中突出显示来高亮显示。 |
highlightPadding | UIEdgeInsets | 应用于高亮矩形的填充。 |
highlightCornerRadius | CGFloat | 高亮矩形的圆角半径。 |
animateInSpeed | NSTimeInterval | 显示弹窗时的动画速度。 |
animateOutSpeed | NSTimeInterval | 取消弹窗时的动画速度。 |
edgeGap | CGFloat | 弹窗的任何边缘与屏幕之间的间隙或边距。 |
overlayBlurEffect | UIBlurEffect | 用于覆盖背景的模糊效果。 |
属性 | 类型 | 描述 |
---|---|---|
arrowSize | CGSize | 弹窗箭头的大小。 |
cornerRadius | CGFloat | 弹窗的圆角半径。 |
popoverColor | UIColor | 弹窗背景的颜色。 |
blurEffect | UIBlurEffect | 用于弹窗背景的模糊效果。 |
contentInset | UIEdgeInsets | 弹窗的内容内边距。 |
弹窗在MIT授权许可下可用。有关更多信息,请参阅LICENSE文件。