BeeReel/BeeReel/Base/View/BRPanModalContentView.swift
2025-07-24 14:21:59 +08:00

91 lines
2.1 KiB
Swift

//
// BRPanModalContentView.swift
// BeeReel
//
// Created by 鸿 on 2025/7/21.
//
import UIKit
import HWPanModal
class BRPanModalContentView: HWPanModalContentView {
var contentHeight = UIScreen.height * (2 / 3)
var mainScrollView: UIScrollView?
///UI contentSize
func setNeedsLayoutUpdate() {
self.panModalSetNeedsLayoutUpdate()
}
private(set) lazy var topImageView: UIImageView = {
let imageView = UIImageView(image: UIImage(named: "highlight_top_image"))
return imageView
}()
override init(frame: CGRect) {
super.init(frame: frame)
backgroundColor = .color1C1C1C()
addSubview(topImageView)
topImageView.snp.makeConstraints { make in
make.top.equalToSuperview()
make.centerX.equalToSuperview()
}
}
required init?(coder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
//MARK: HWPanModalPresentable
override func panScrollable() -> UIScrollView? {
return mainScrollView
}
override func longFormHeight() -> PanModalHeight {
return PanModalHeightMake(.content, contentHeight)
}
override func showDragIndicator() -> Bool {
return false
}
override func backgroundConfig() -> HWBackgroundConfig {
let config = HWBackgroundConfig()
config.backgroundAlpha = 0.0
return config
}
override func allowsDragToDismiss() -> Bool {
return false
}
///
override func allowsTapBackgroundToDismiss() -> Bool {
return true
}
override func allowsPullDownWhenShortState() -> Bool {
return false
}
override func minVerticalVelocityToTriggerDismiss() -> CGFloat {
return 0
}
override func showsScrollableVerticalScrollIndicator() -> Bool {
return false
}
override func springDamping() -> CGFloat {
return 1
}
override func cornerRadius() -> CGFloat {
return 24
}
}