gpt4 book ai didi

ios - 如何为 UIView 创建拖动动画?

转载 作者:搜寻专家 更新时间:2023-11-01 06:22:48 24 4
gpt4 key购买 nike

我的 UIViewController 底部有一个隐藏的 UIView

我想创建一个交互式动画,逐步显示我的 UIView,就像我从底部拖动 UIView 它会跟随我的手指(位置、速度等)。如果我越过 UIView 最终位置的一半并松开手指,它会继续,如果我没有到达一半,它就会返回隐藏状态。基本上,与控制中心的行为相同。

问题是我不知道从哪里开始。有人能指出我正确的方向吗?

最佳答案

你应该使用UIGestureRecognizer,例如UIScreenEdgePanGestureRecognizer

  1. 保留属性(property)

    var gestureReconginzer:UIScreenEdgePanGestureRecognizer?
  2. 然后在viewDidLoad中,初始化gestureReconginzer

    gestureReconginzer = UIScreenEdgePanGestureRecognizer(target: self, action: "catch:")
    gestureReconginzer?.edges = UIRectEdge.Bottom
    self.view.addGestureRecognizer(gestureReconginzer!)
  3. 手势重新识别时

    func catchGestrue(gesture:UIScreenEdgePanGestureRecognizer){
    switch(gesture.state){
    case .Began:
    //Set your view hidden = false
    case .Changed:
    //Change your view center
    case .Ended:
    //Decide if your view reach half way.
    //Use UIView.animateWithDuration to let your view return or go to right place
    default:
    }
    }

BTY:我不认为从底部拉出 View 是个好主意。

我在 here 中有一个简单的 objective-c 项目,如果你知道 objective-c ,你可以引用手势部分。

关于ios - 如何为 UIView 创建拖动动画?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30448340/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com