1. 程式人生 > >iOS按鈕圖片旋轉 swift版

iOS按鈕圖片旋轉 swift版

需求:按鈕圖片為向下箭頭,點選完後,動畫過渡為向上

檢視圖片
動圖圖片展示
@objc func buttonAction(sender: UIButton) {
        //建立動畫
        let anim = CABasicAnimation()
        //一個重要的設定:就是keyPath
        //旋轉動畫一定要設定為transform.rotation,不能寫錯
        anim.keyPath = "transform.rotation"
        //目標值
        if sender.isSelected {
            anim.toValue = 0
        }else {
            anim.toValue = Double.pi
        }
        //動畫時長
        anim.duration = 0.3
        //以下兩句可以設定動畫結束時 layer停在toValue這裡
        anim.isRemovedOnCompletion = false
        anim.fillMode = kCAFillModeForwards
        //新增動畫到layer層上
        sender.imageView?.layer.add(anim, forKey: nil)
        //切換按鈕的選中狀態
        sender.isSelected = !sender.isSelected
    }