ナビゲーションコントローラー内にビューがあります。
次に、このビューにサブビューを追加し、元の高さをオフセットして、画面の半分だけをカバーするようにします (残りの半分は画面の下部からはみ出します)。このビューを上にドラッグできるようにしたいのですが、ナビゲーションバーの下部に到達すると停止します。
UIPanGestureRecognizer
ビューのドラッグを処理するためにa を使用していますが、これは正常に機能しますが、境界で停止しているようには見えません。
これは私が使用しているコードです:
bottomNavbarY = UIApplication.sharedApplication().statusBarFrame.size.height + self.navigationController!.navigationBar.frame.size.height
view.addSubview(pullover.view)
pullover.view.frame.origin.y = pulloverOffset
var animator = UIDynamicAnimator(referenceView: view)
var collision = UICollisionBehavior(items: [pullover.view])
collision.translatesReferenceBoundsIntoBoundary = true
collision.addBoundaryWithIdentifier("upper", fromPoint: CGPointMake(0, bottomNavbarY), toPoint: CGPointMake(UIScreen.mainScreen().bounds.size.width, bottomNavbarY))
animator.addBehavior(collision)
ただし、カバービューを上にドラッグすると、境界と相互作用することはなく、まっすぐ通過します。私は何を間違っていますか?このようにユーザーがドラッグしているビューを境界を使用して停止することはできますか?