动画应用程序的按钮

时间:2016-01-04 19:34:35

标签: ios swift uiview uibutton

我想动画我的应用的每个按钮,但我想保持代码干净。我创建了以下代码:

UIView.animateWithDuration(0.1 ,
            animations: {
                self.mais1Btn.transform = CGAffineTransformMakeScale(1.1, 1.1) 
            },
            completion: { finish in
                UIView.animateWithDuration(0.1){
                    self.mais1Btn.transform = CGAffineTransformIdentity
                }
        })

但我不想在代码中的每个IBAction中复制和粘贴代码。我不认为这是更好的方法。我想创建一个单独的类并更改按钮的类,但我不认为这是可能的,因为我必须引用插座。

任何人都知道更好的方法吗?

1 个答案:

答案 0 :(得分:2)

在按钮

上创建扩展程序
extension UIButton {
   func doMyAnimation() {
     UIView.animateWithDuration(0.1 ,
        animations: {
            self.transform = CGAffineTransformMakeScale(1.1, 1.1) 
        },
        completion: { finish in
            UIView.animateWithDuration(0.1){
                self.transform = CGAffineTransformIdentity
            }
    })          
   }
}

,只要您想为其设置动画,只需致电myButton.doMyAnimation()