JKPresentationController 2.0.0

JKPresentationController 2.0.0

xq-120 维护。



  • 作者:
  • jekyttt

JKPresentationController

JKPresentationController封装了弹窗的显示与隐藏,并提供了默认的淡入淡出动画。使用者只需关注弹窗的内容,其他的交给这个库就完事了。

特点

  • 提供统一的弹出与隐藏方法,规范API。
  • 提供默认的淡入淡出动画,支持自定义弹出/隐藏动画。
  • 与具体的弹窗内容无关,自由度更高。
  • 采用扩展的方式实现,对代码无侵入性。
  • 兼容OC。

使用

创建好弹窗控制器后,调用弹出方法即可。

let alert = JKBroadcastBeginAlertViewController.init()
//在内部创建的 window 上弹出。
alert.jk_show(withAnimated: true) {

}

或者

let alert = JKPublishCommentAlertViewController.init()
//在当前控制器上弹出
alert.jk_show(withViewController: self, animated: true) {

}

弹出带有navigation的弹窗:

let alert = JKBroadcastBeginAlertViewController.init()
alert.fd_prefersNavigationBarHidden = true
alert.sureBtnDidClickedBlk = { [unowned alert] in
    let detail = FDEDetailViewController.init()
    detail.hidesBottomBarWhenPushed = true
    alert.navigationController?.pushViewController(detail, animated: true)
}
let nav = UINavigationController.init(rootViewController: alert)
nav.jk_presentAnimation = JKFadeInPresentAnimation.init()
nav.jk_dismissAnimation = JKFadeOutDismissAnimation.init()
nav.jk_show(withViewController: self, animated: true) {

}

弹出时默认是淡入淡出效果,可根据需要实现其他动画。

关闭弹窗

self.jk_hide(withAnimated: true) { [unowned self] in

}

注意

建议继承JKBaseAlertViewController。

一些弹窗示例

图片替换文本

图片替换文本

图片替换文本