Avatar ·

如何实现像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