如何实现像iOS地图应用中的底部弹出面板(bottom sheet)
大家好!我是iOS开发新手,使用Swift,正在尝试制作类似Apple地图应用的界面。我需要一个从屏幕底部滑出的信息面板,可以上下拖动,并固定在两个位置:部分打开(只显示标题)和完全打开(显示全部内容)。
我尝试过使用UIScrollView配合delegate和动画,但效果不好:面板抖动,停止不流畅,而且如果UIScrollView内部有UITableView,拖拽手势会冲突。
以下是我写的代码:
```swift
class BottomSheetViewController: UIViewController {
@IBOutlet weak var bottomSheetView: UIView!
@IBOutlet weak var bottomConstraint: NSLayoutConstraint!
override func viewDidLoad() {
super.viewDidLoad()
let panGesture = UIPanGestureRecognizer(target: self, action: #selector(handlePan(_:)))
bottomSheetView.addGestureRecognizer(panGesture