HWPanModal 使用教程
HWPanModalHWPanModal presents controller from bottom and drag to dismiss, high customize. iOS13 default modalPresentationStyle. 任意形式的底部弹框动画;头条、知乎、抖音弹出评论效果;地图浮层,iOS13 present默认模态效果。项目地址:https://gitcode.com/gh_mirrors/hw/HWPanModal
项目介绍
HWPanModal 是一个用于 iOS 的开源库,旨在提供一个高度可定制的、易于使用的弹出视图控制器。它允许开发者轻松创建各种弹出式界面,如底部弹出菜单、中间弹出框等。HWPanModal 支持手势交互,可以实现平滑的动画效果,并且兼容各种视图控制器。
项目快速启动
安装
你可以通过 CocoaPods 安装 HWPanModal:
pod 'HWPanModal'
基本使用
-
导入库
import HWPanModal
-
创建一个视图控制器并使其支持 PanModal
class MyViewController: UIViewController, HWPanModalPresentable {
override func viewDidLoad() {
super.viewDidLoad()
view.backgroundColor = .white
}
var panModalHeight: PanModalHeight {
return .contentHeight(300)
}
}
-
展示 PanModal
let myViewController = MyViewController()
presentPanModal(myViewController)
应用案例和最佳实践
底部弹出菜单
一个常见的应用场景是底部弹出菜单。你可以通过设置 panModalHeight
和 topOffset
来控制弹出视图的高度和位置。
var panModalHeight: PanModalHeight {
return .contentHeight(300)
}
var topOffset: CGFloat {
return 0
}
中间弹出框
如果你想创建一个中间弹出框,可以设置 isUserInteractionEnabled
和 isHapticFeedbackEnabled
属性。
var isUserInteractionEnabled: Bool {
return true
}
var isHapticFeedbackEnabled: Bool {
return true
}
典型生态项目
HWPanModal 可以与其他流行的 iOS 开源库结合使用,以增强功能和用户体验。以下是一些典型的生态项目:
- RxSwift:结合 RxSwift 可以实现响应式编程,使弹出视图的交互更加流畅。
- SnapKit:使用 SnapKit 可以更方便地进行自动布局,简化视图的约束设置。
- Kingfisher:如果你需要在弹出视图中加载网络图片,Kingfisher 是一个很好的选择。
通过结合这些生态项目,你可以创建更加强大和灵活的 iOS 应用。
HWPanModalHWPanModal presents controller from bottom and drag to dismiss, high customize. iOS13 default modalPresentationStyle. 任意形式的底部弹框动画;头条、知乎、抖音弹出评论效果;地图浮层,iOS13 present默认模态效果。项目地址:https://gitcode.com/gh_mirrors/hw/HWPanModal