ios - 动画应用程序的按钮

标签 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 中复制和粘贴代码。我认为这不是更好的方法。我想创建一个单独的类并更改按钮的类,但我认为这不可能,因为我必须引用 socket 。

有人知道更好的方法吗?

最佳答案

在按钮上创建一个扩展

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()

关于ios - 动画应用程序的按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34598504/

相关文章:

swift - JSONDecoder - 解码字符串值以纠正类型

iphone - 找出 subview 相对于 View 的位置

iphone - 通过触摸传递到下面的 UIViews

ios - 平衡ios电池生命周期和定位精度

ios - React Native 应用程序在生产中崩溃

ios - 如何从 iOS 类 "CAEAGLLayer"获取 _CAEAGLNativeWindow

iphone - iOS从网络获取压缩图像

xcode - SKSpriteNode 通过触摸拖动移动

swift 结合。如何转变出版商值(value)观

ios - 如何仅设置 UIView 的左上角和右上角的cornerRadius?