如何在swift中为现有按钮设置动画

时间:2015-08-22 10:30:54

标签: ios swift

我想在swift中动画现有的UIButton,目标是当他点击视图控制器时让用户注意这个按钮。动画应该从视图控制器的顶部开始,然后转到按钮的初始位置。

我做了以下情况,但它不起作用:

import UIKit

class ViewController: UIViewController {
@IBOutlet var dismissButton: UIButton!


override func viewDidLoad() {
    super.viewDidLoad()

    dismissButton = UIButton()

    var tapGesture = UITapGestureRecognizer(target: self, action: Selector("handleTapGesture:"))
    view.addGestureRecognizer(tapGesture)

}



func handleTapGesture(tapGesture: UITapGestureRecognizer) {
    println("tap")

    UIView.animateWithDuration(2.0, delay: 0.5, usingSpringWithDamping: 0.2, initialSpringVelocity: 0.0, options: nil, animations: {

        self.dismissButton.center = CGPoint(x: 200, y: 90 + 200)
        }, completion: nil)
}


}

有什么建议吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

第1步:获取按钮的顶部约束的IBOutlet 第2步:使用constraintName.constant属性更新约束常量 第3步:在动画块类型self.view.layoutIfNeeded()

以下是一个简单示例:https://stackoverflow.com/a/26040569/3411787