Swift 3.0 物品加入購物車的拋物線動畫

加入購物車動畫.gif

首先創(chuàng)建2個圖片和一個按鈕

        let btn = UIButton.init(frame: CGRect.init(x: 100, y: 50, width: 50, height: 20))
        btn.setTitle("購買", for: .normal)
        btn.backgroundColor = UIColor.orange
        btn.addTarget(self, action: #selector(butBtnClick), for: .touchUpInside)
        self.view.addSubview(btn)
        
        
        goodImage.frame = CGRect.init(x: 20, y: 100, width: 30, height: 30)
        goodImage.image = UIImage.init(named: "商品")
        self.view.addSubview(goodImage)
        
        buyCar.frame = CGRect.init(x: 300, y: 300, width: 30, height: 30)
        buyCar.image = UIImage.init(named: "購物車")
        self.view.addSubview(buyCar)

然后創(chuàng)建一個貝塞爾曲線來描繪物品進入購物車的曲線

        path.move(to: CGPoint.init(x:20,y:100))
        path.addQuadCurve(to: CGPoint.init(x: 300, y: 300), controlPoint: CGPoint.init(x: 150, y: 20))

然后在按鈕的點擊事件中使用組合動畫: 獲取貝塞爾的路徑,旋轉動畫,縮小動畫
最后的組合動畫方法添加了一個代理,OC中是不需要的,不知道Swift中莫名的打動畫結束的協(xié)議方法了,進去一看原來新加了一個代理

        //獲取貝塞爾曲線的路徑
        let animationPath = CAKeyframeAnimation.init(keyPath: "position")
        animationPath.path = path.cgPath
        animationPath.rotationMode = kCAAnimationRotateAuto
        
        
        //旋轉
        let rotate:CABasicAnimation = CABasicAnimation()
        rotate.keyPath = "transform.rotation"
        rotate.toValue = M_PI
        
        //縮小圖片到0
        let scale:CABasicAnimation = CABasicAnimation()
        scale.keyPath = "transform.scale"
        scale.toValue = 0.0

        //組合動畫
        let animationGroup:CAAnimationGroup = CAAnimationGroup()
        animationGroup.animations = [animationPath,rotate,scale];
        animationGroup.duration = 2.0;
        animationGroup.delegate = self
        animationGroup.fillMode = kCAFillModeForwards;
        animationGroup.isRemovedOnCompletion = false
        goodImage.layer.add(animationGroup, forKey:
            nil)


協(xié)議方法:動畫結束后執(zhí)行購物車的抖動

    func animationDidStop(_ anim: CAAnimation, finished flag: Bool) {
        //購物車抖動
        let shakeAnimation = CABasicAnimation.init(keyPath: "transform.translation.y")
        shakeAnimation.duration = 0.5
        shakeAnimation.fromValue = NSNumber.init(value: -5)
        shakeAnimation.toValue = NSNumber.init(value: 5)
        shakeAnimation.autoreverses = true
        buyCar.layer.add(shakeAnimation, forKey: nil)
    }
最后編輯于
?著作權歸作者所有,轉載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末枫慷,一起剝皮案震驚了整個濱河市偶垮,隨后出現(xiàn)的幾起案子执解,更是在濱河造成了極大的恐慌,老刑警劉巖哲身,帶你破解...
    沈念sama閱讀 212,884評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件辩涝,死亡現(xiàn)場離奇詭異,居然都是意外死亡勘天,警方通過查閱死者的電腦和手機怔揩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,755評論 3 385
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來脯丝,“玉大人商膊,你說我怎么就攤上這事〕杞” “怎么了晕拆?”我有些...
    開封第一講書人閱讀 158,369評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長材蹬。 經(jīng)常有香客問我实幕,道長,這世上最難降的妖魔是什么堤器? 我笑而不...
    開封第一講書人閱讀 56,799評論 1 285
  • 正文 為了忘掉前任昆庇,我火速辦了婚禮,結果婚禮上闸溃,老公的妹妹穿的比我還像新娘整吆。我一直安慰自己,他們只是感情好圈暗,可當我...
    茶點故事閱讀 65,910評論 6 386
  • 文/花漫 我一把揭開白布掂为。 她就那樣靜靜地躺著,像睡著了一般员串。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上昼扛,一...
    開封第一講書人閱讀 50,096評論 1 291
  • 那天寸齐,我揣著相機與錄音欲诺,去河邊找鬼。 笑死渺鹦,一個胖子當著我的面吹牛扰法,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播毅厚,決...
    沈念sama閱讀 39,159評論 3 411
  • 文/蒼蘭香墨 我猛地睜開眼塞颁,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了吸耿?” 一聲冷哼從身側響起祠锣,我...
    開封第一講書人閱讀 37,917評論 0 268
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎咽安,沒想到半個月后伴网,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,360評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡妆棒,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,673評論 2 327
  • 正文 我和宋清朗相戀三年澡腾,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片糕珊。...
    茶點故事閱讀 38,814評論 1 341
  • 序言:一個原本活蹦亂跳的男人離奇死亡动分,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出红选,到底是詐尸還是另有隱情刺啦,我是刑警寧澤,帶...
    沈念sama閱讀 34,509評論 4 334
  • 正文 年R本政府宣布纠脾,位于F島的核電站玛瘸,受9級特大地震影響,放射性物質發(fā)生泄漏苟蹈。R本人自食惡果不足惜糊渊,卻給世界環(huán)境...
    茶點故事閱讀 40,156評論 3 317
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望慧脱。 院中可真熱鬧渺绒,春花似錦、人聲如沸菱鸥。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,882評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽氮采。三九已至殷绍,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間鹊漠,已是汗流浹背主到。 一陣腳步聲響...
    開封第一講書人閱讀 32,123評論 1 267
  • 我被黑心中介騙來泰國打工茶行, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人登钥。 一個月前我還...
    沈念sama閱讀 46,641評論 2 362
  • 正文 我出身青樓畔师,卻偏偏與公主長得像,于是被迫代替她去往敵國和親牧牢。 傳聞我的和親對象是個殘疾皇子看锉,可洞房花燭夜當晚...
    茶點故事閱讀 43,728評論 2 351

推薦閱讀更多精彩內(nèi)容

  • Android 自定義View的各種姿勢1 Activity的顯示之ViewRootImpl詳解 Activity...
    passiontim閱讀 171,871評論 25 707
  • 發(fā)現(xiàn) 關注 消息 iOS 第三方庫、插件塔鳍、知名博客總結 作者大灰狼的小綿羊哥哥關注 2017.06.26 09:4...
    肇東周閱讀 12,066評論 4 62
  • 一伯铣、劇情簡介 看過杜拉拉升職記的人都知道,職場小白杜拉拉在著名外企逆襲的成功故事献幔。而這次懂傀,作為華麗干練的職場老精英...
    幻想家Melon閱讀 682評論 0 0
  • 受“慧愛公益”的邀請烁挟,我作為志愿者之一參與到了此次廣西青鳥支教行膘侮。 在出發(fā)之前我設想的這趟支教之旅就是跟孩子們玩玩...
    豬一一yy閱讀 329評論 0 0
  • Android FFmpeg音頻播放 本文介紹了使用opensl es和FFmpeg在Android平臺上實現(xiàn)音頻...
    JasonXiao閱讀 4,419評論 9 26